{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "284d0bbf-8b66-4006-b3a5-6d1f62b49501",
   "metadata": {},
   "source": [
    "### 解决问题\n",
    "1. 配送服务是否存在问题\n",
    "2. 是否存在尚有潜力的销售区域\n",
    "3. 商品是否存在质量问题"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "f4cdf721-0126-42d9-a6da-acc77a9bd43d",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os \n",
    "import pandas as pd\n",
    "import matplotlib.pyplot  as plt\n",
    "\n",
    "%matplotlib inline\n",
    "\n",
    "plt.rcParams[\"font.sans-serif\"] = [\"SimHei\"]\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "52630914-4e69-4261-aa4e-3228ca36b7dd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>订单号</th>\n",
       "      <th>订单行</th>\n",
       "      <th>销售时间</th>\n",
       "      <th>交货时间</th>\n",
       "      <th>货品交货状况</th>\n",
       "      <th>货品</th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>销售区域</th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>P096311</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-7-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1052,75元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>P096826</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-8-30</td>\n",
       "      <td>2016-10-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>10.0</td>\n",
       "      <td>11,50万元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>NaN</td>\n",
       "      <td>20</td>\n",
       "      <td>2016-8-30</td>\n",
       "      <td>2016-10-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>10.0</td>\n",
       "      <td>11,50万元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>P097435</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-7-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品1</td>\n",
       "      <td>返修</td>\n",
       "      <td>华南</td>\n",
       "      <td>2.0</td>\n",
       "      <td>6858,77元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>P097446</td>\n",
       "      <td>60</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>129,58元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1156</th>\n",
       "      <td>P299901</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>2.0</td>\n",
       "      <td>200,41元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1157</th>\n",
       "      <td>P302956</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华东</td>\n",
       "      <td>20.0</td>\n",
       "      <td>79,44元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1158</th>\n",
       "      <td>P303801</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>194,08元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1159</th>\n",
       "      <td>P307276</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>1.0</td>\n",
       "      <td>32,18元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1160</th>\n",
       "      <td>P314165</td>\n",
       "      <td>10</td>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2017-3-20</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1720,92元</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1161 rows × 10 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "          订单号  订单行        销售时间        交货时间 货品交货状况   货品 货品用户反馈  销售区域    数量  \\\n",
       "0     P096311   10   2016-7-30   2016-9-30    晚交货  货品3   质量合格    华北   2.0   \n",
       "1     P096826   10   2016-8-30  2016-10-30   按时交货  货品3   质量合格    华北  10.0   \n",
       "2         NaN   20   2016-8-30  2016-10-30   按时交货  货品3   质量合格    华北  10.0   \n",
       "3     P097435   10   2016-7-30   2016-9-30   按时交货  货品1     返修    华南   2.0   \n",
       "4     P097446   60  2016-11-26   2017-1-26    晚交货  货品3   质量合格    华北  15.0   \n",
       "...       ...  ...         ...         ...    ...  ...    ...   ...   ...   \n",
       "1156  P299901   10  2016-12-15   2017-3-15   按时交货  货品6   质量合格  马来西亚   2.0   \n",
       "1157  P302956   10  2016-12-22   2017-3-22   按时交货  货品2     拒货    华东  20.0   \n",
       "1158  P303801   10  2016-12-15   2017-3-15   按时交货  货品2   质量合格    华东   1.0   \n",
       "1159  P307276   10  2016-12-22   2017-3-22   按时交货  货品6   质量合格  马来西亚   1.0   \n",
       "1160  P314165   10  2016-12-20   2017-3-20   按时交货  货品2   质量合格    华东   1.0   \n",
       "\n",
       "          销售金额  \n",
       "0     1052,75元  \n",
       "1      11,50万元  \n",
       "2      11,50万元  \n",
       "3     6858,77元  \n",
       "4      129,58元  \n",
       "...        ...  \n",
       "1156   200,41元  \n",
       "1157    79,44元  \n",
       "1158   194,08元  \n",
       "1159    32,18元  \n",
       "1160  1720,92元  \n",
       "\n",
       "[1161 rows x 10 columns]"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = pd.read_csv(\"data/data_wuliu.csv\",encoding='gbk')\n",
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "6e5d1e12-0cd1-4dc1-a065-247f3819e1da",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 1161 entries, 0 to 1160\n",
      "Data columns (total 10 columns):\n",
      " #   Column  Non-Null Count  Dtype  \n",
      "---  ------  --------------  -----  \n",
      " 0   订单号     1159 non-null   object \n",
      " 1   订单行     1161 non-null   int64  \n",
      " 2   销售时间    1161 non-null   object \n",
      " 3   交货时间    1161 non-null   object \n",
      " 4   货品交货状况  1159 non-null   object \n",
      " 5   货品      1161 non-null   object \n",
      " 6   货品用户反馈  1161 non-null   object \n",
      " 7   销售区域    1161 non-null   object \n",
      " 8   数量      1157 non-null   float64\n",
      " 9   销售金额    1161 non-null   object \n",
      "dtypes: float64(1), int64(1), object(8)\n",
      "memory usage: 90.8+ KB\n"
     ]
    }
   ],
   "source": [
    "data.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "4025d6aa-0cde-4edd-b7fd-b4740e67014a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Index: 1152 entries, 0 to 1160\n",
      "Data columns (total 10 columns):\n",
      " #   Column  Non-Null Count  Dtype  \n",
      "---  ------  --------------  -----  \n",
      " 0   订单号     1150 non-null   object \n",
      " 1   订单行     1152 non-null   int64  \n",
      " 2   销售时间    1152 non-null   object \n",
      " 3   交货时间    1152 non-null   object \n",
      " 4   货品交货状况  1150 non-null   object \n",
      " 5   货品      1152 non-null   object \n",
      " 6   货品用户反馈  1152 non-null   object \n",
      " 7   销售区域    1152 non-null   object \n",
      " 8   数量      1150 non-null   float64\n",
      " 9   销售金额    1152 non-null   object \n",
      "dtypes: float64(1), int64(1), object(8)\n",
      "memory usage: 99.0+ KB\n"
     ]
    }
   ],
   "source": [
    "data.drop_duplicates(keep='first',inplace=True)\n",
    "data.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "165fc9c7-3b9f-4fb5-9bc3-14b65109e6ce",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Index: 1146 entries, 0 to 1160\n",
      "Data columns (total 10 columns):\n",
      " #   Column  Non-Null Count  Dtype  \n",
      "---  ------  --------------  -----  \n",
      " 0   订单号     1146 non-null   object \n",
      " 1   订单行     1146 non-null   int64  \n",
      " 2   销售时间    1146 non-null   object \n",
      " 3   交货时间    1146 non-null   object \n",
      " 4   货品交货状况  1146 non-null   object \n",
      " 5   货品      1146 non-null   object \n",
      " 6   货品用户反馈  1146 non-null   object \n",
      " 7   销售区域    1146 non-null   object \n",
      " 8   数量      1146 non-null   float64\n",
      " 9   销售金额    1146 non-null   object \n",
      "dtypes: float64(1), int64(1), object(8)\n",
      "memory usage: 98.5+ KB\n"
     ]
    }
   ],
   "source": [
    "data.dropna(axis=0,how='any',inplace=True)\n",
    "data.info()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "e500640c-11d8-412e-9197-f0cde1aa4654",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Index: 1146 entries, 0 to 1160\n",
      "Data columns (total 9 columns):\n",
      " #   Column  Non-Null Count  Dtype  \n",
      "---  ------  --------------  -----  \n",
      " 0   订单号     1146 non-null   object \n",
      " 1   销售时间    1146 non-null   object \n",
      " 2   交货时间    1146 non-null   object \n",
      " 3   货品交货状况  1146 non-null   object \n",
      " 4   货品      1146 non-null   object \n",
      " 5   货品用户反馈  1146 non-null   object \n",
      " 6   销售区域    1146 non-null   object \n",
      " 7   数量      1146 non-null   float64\n",
      " 8   销售金额    1146 non-null   object \n",
      "dtypes: float64(1), object(8)\n",
      "memory usage: 89.5+ KB\n"
     ]
    }
   ],
   "source": [
    "data.drop(columns=['订单行'],axis=1,inplace=True)\n",
    "data.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "2cfdb37c-1c25-433c-998a-834b46380d5f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>订单号</th>\n",
       "      <th>销售时间</th>\n",
       "      <th>交货时间</th>\n",
       "      <th>货品交货状况</th>\n",
       "      <th>货品</th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>销售区域</th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>P096311</td>\n",
       "      <td>2016-7-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1052,75元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>P096826</td>\n",
       "      <td>2016-8-30</td>\n",
       "      <td>2016-10-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>10.0</td>\n",
       "      <td>11,50万元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>P097435</td>\n",
       "      <td>2016-7-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品1</td>\n",
       "      <td>返修</td>\n",
       "      <td>华南</td>\n",
       "      <td>2.0</td>\n",
       "      <td>6858,77元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>129,58元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>32,39元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1141</th>\n",
       "      <td>P299901</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>2.0</td>\n",
       "      <td>200,41元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1142</th>\n",
       "      <td>P302956</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华东</td>\n",
       "      <td>20.0</td>\n",
       "      <td>79,44元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1143</th>\n",
       "      <td>P303801</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>194,08元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1144</th>\n",
       "      <td>P307276</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>1.0</td>\n",
       "      <td>32,18元</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1145</th>\n",
       "      <td>P314165</td>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2017-3-20</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1720,92元</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1146 rows × 9 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "          订单号        销售时间        交货时间 货品交货状况   货品 货品用户反馈  销售区域    数量      销售金额\n",
       "0     P096311   2016-7-30   2016-9-30    晚交货  货品3   质量合格    华北   2.0  1052,75元\n",
       "1     P096826   2016-8-30  2016-10-30   按时交货  货品3   质量合格    华北  10.0   11,50万元\n",
       "2     P097435   2016-7-30   2016-9-30   按时交货  货品1     返修    华南   2.0  6858,77元\n",
       "3     P097446  2016-11-26   2017-1-26    晚交货  货品3   质量合格    华北  15.0   129,58元\n",
       "4     P097446  2016-11-26   2017-1-26    晚交货  货品3     拒货    华北  15.0    32,39元\n",
       "...       ...         ...         ...    ...  ...    ...   ...   ...       ...\n",
       "1141  P299901  2016-12-15   2017-3-15   按时交货  货品6   质量合格  马来西亚   2.0   200,41元\n",
       "1142  P302956  2016-12-22   2017-3-22   按时交货  货品2     拒货    华东  20.0    79,44元\n",
       "1143  P303801  2016-12-15   2017-3-15   按时交货  货品2   质量合格    华东   1.0   194,08元\n",
       "1144  P307276  2016-12-22   2017-3-22   按时交货  货品6   质量合格  马来西亚   1.0    32,18元\n",
       "1145  P314165  2016-12-20   2017-3-20   按时交货  货品2   质量合格    华东   1.0  1720,92元\n",
       "\n",
       "[1146 rows x 9 columns]"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#更新索引\n",
    "data.reset_index(drop=True,inplace=True)\n",
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "e3b2b07d-12b7-4621-80ee-a4a84fc6d649",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>订单号</th>\n",
       "      <th>销售时间</th>\n",
       "      <th>交货时间</th>\n",
       "      <th>货品交货状况</th>\n",
       "      <th>货品</th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>销售区域</th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>P096311</td>\n",
       "      <td>2016-7-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>2.0</td>\n",
       "      <td>105275.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>P096826</td>\n",
       "      <td>2016-8-30</td>\n",
       "      <td>2016-10-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>10.0</td>\n",
       "      <td>11500000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>P097435</td>\n",
       "      <td>2016-7-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品1</td>\n",
       "      <td>返修</td>\n",
       "      <td>华南</td>\n",
       "      <td>2.0</td>\n",
       "      <td>685877.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>12958.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>3239.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1141</th>\n",
       "      <td>P299901</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>2.0</td>\n",
       "      <td>20041.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1142</th>\n",
       "      <td>P302956</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华东</td>\n",
       "      <td>20.0</td>\n",
       "      <td>7944.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1143</th>\n",
       "      <td>P303801</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>19408.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1144</th>\n",
       "      <td>P307276</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>1.0</td>\n",
       "      <td>3218.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1145</th>\n",
       "      <td>P314165</td>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2017-3-20</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>172092.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1146 rows × 9 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "          订单号        销售时间        交货时间 货品交货状况   货品 货品用户反馈  销售区域    数量  \\\n",
       "0     P096311   2016-7-30   2016-9-30    晚交货  货品3   质量合格    华北   2.0   \n",
       "1     P096826   2016-8-30  2016-10-30   按时交货  货品3   质量合格    华北  10.0   \n",
       "2     P097435   2016-7-30   2016-9-30   按时交货  货品1     返修    华南   2.0   \n",
       "3     P097446  2016-11-26   2017-1-26    晚交货  货品3   质量合格    华北  15.0   \n",
       "4     P097446  2016-11-26   2017-1-26    晚交货  货品3     拒货    华北  15.0   \n",
       "...       ...         ...         ...    ...  ...    ...   ...   ...   \n",
       "1141  P299901  2016-12-15   2017-3-15   按时交货  货品6   质量合格  马来西亚   2.0   \n",
       "1142  P302956  2016-12-22   2017-3-22   按时交货  货品2     拒货    华东  20.0   \n",
       "1143  P303801  2016-12-15   2017-3-15   按时交货  货品2   质量合格    华东   1.0   \n",
       "1144  P307276  2016-12-22   2017-3-22   按时交货  货品6   质量合格  马来西亚   1.0   \n",
       "1145  P314165  2016-12-20   2017-3-20   按时交货  货品2   质量合格    华东   1.0   \n",
       "\n",
       "            销售金额  \n",
       "0       105275.0  \n",
       "1     11500000.0  \n",
       "2       685877.0  \n",
       "3        12958.0  \n",
       "4         3239.0  \n",
       "...          ...  \n",
       "1141     20041.0  \n",
       "1142      7944.0  \n",
       "1143     19408.0  \n",
       "1144      3218.0  \n",
       "1145    172092.0  \n",
       "\n",
       "[1146 rows x 9 columns]"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#编写自定义函数清洗销售金额列，删除逗号，转成float，如果是万元则*10000，然后把单位都删除\n",
    "def sales_clean(number):\n",
    "    if number.find('万元') != -1:\n",
    "        return float(number[:number.find('万元')].replace(',',''))* 10000\n",
    "    else:\n",
    "        return float(number[:number.find('元')].replace(',',''))\n",
    "\n",
    "\n",
    "data['销售金额'] = data['销售金额'].map(sales_clean)\n",
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "aa6edef2-555f-43e9-84bd-3f0896edcd33",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>1146.000000</td>\n",
       "      <td>1.146000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>76.069372</td>\n",
       "      <td>1.223488e+05</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>589.416486</td>\n",
       "      <td>1.114599e+06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.000000e+00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>2.941500e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>9.476500e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>4.000000</td>\n",
       "      <td>3.576775e+04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>11500.000000</td>\n",
       "      <td>3.270000e+07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                 数量          销售金额\n",
       "count   1146.000000  1.146000e+03\n",
       "mean      76.069372  1.223488e+05\n",
       "std      589.416486  1.114599e+06\n",
       "min        1.000000  0.000000e+00\n",
       "25%        1.000000  2.941500e+03\n",
       "50%        1.000000  9.476500e+03\n",
       "75%        4.000000  3.576775e+04\n",
       "max    11500.000000  3.270000e+07"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "35957314-b0c8-4a02-9969-bb98d0d88ae2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0       True\n",
      "1       True\n",
      "2       True\n",
      "3       True\n",
      "4       True\n",
      "        ... \n",
      "1141    True\n",
      "1142    True\n",
      "1143    True\n",
      "1144    True\n",
      "1145    True\n",
      "Name: 销售金额, Length: 1145, dtype: bool\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>1145.000000</td>\n",
       "      <td>1.145000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>76.134934</td>\n",
       "      <td>1.224557e+05</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>589.669861</td>\n",
       "      <td>1.115081e+06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>5.100000e+01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>2.946000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>9.486000e+03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>4.000000</td>\n",
       "      <td>3.577300e+04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>11500.000000</td>\n",
       "      <td>3.270000e+07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                 数量          销售金额\n",
       "count   1145.000000  1.145000e+03\n",
       "mean      76.134934  1.224557e+05\n",
       "std      589.669861  1.115081e+06\n",
       "min        1.000000  5.100000e+01\n",
       "25%        1.000000  2.946000e+03\n",
       "50%        1.000000  9.486000e+03\n",
       "75%        4.000000  3.577300e+04\n",
       "max    11500.000000  3.270000e+07"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#销售金额为0的数据剔除,因为数据量很小\n",
    "print(data['销售金额']!=0)\n",
    "data = data[data['销售金额']!=0]\n",
    "data.describe()\n",
    "#发现销售金额和数量存在严重右偏现在，符合电商领域2/8法则，无需处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "af601d18-b14d-4ad5-b7ff-fff33a7b3196",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Index: 1145 entries, 0 to 1145\n",
      "Data columns (total 9 columns):\n",
      " #   Column  Non-Null Count  Dtype         \n",
      "---  ------  --------------  -----         \n",
      " 0   订单号     1145 non-null   object        \n",
      " 1   销售时间    1145 non-null   datetime64[ns]\n",
      " 2   交货时间    1145 non-null   object        \n",
      " 3   货品交货状况  1145 non-null   object        \n",
      " 4   货品      1145 non-null   object        \n",
      " 5   货品用户反馈  1145 non-null   object        \n",
      " 6   销售区域    1145 non-null   object        \n",
      " 7   数量      1145 non-null   float64       \n",
      " 8   销售金额    1145 non-null   float64       \n",
      "dtypes: datetime64[ns](1), float64(2), object(6)\n",
      "memory usage: 89.5+ KB\n",
      "None\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>订单号</th>\n",
       "      <th>销售时间</th>\n",
       "      <th>交货时间</th>\n",
       "      <th>货品交货状况</th>\n",
       "      <th>货品</th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>销售区域</th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "      <th>month</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>P096311</td>\n",
       "      <td>2016-07-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>2.0</td>\n",
       "      <td>105275.0</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>P096826</td>\n",
       "      <td>2016-08-30</td>\n",
       "      <td>2016-10-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>10.0</td>\n",
       "      <td>11500000.0</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>P097435</td>\n",
       "      <td>2016-07-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品1</td>\n",
       "      <td>返修</td>\n",
       "      <td>华南</td>\n",
       "      <td>2.0</td>\n",
       "      <td>685877.0</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>12958.0</td>\n",
       "      <td>11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>3239.0</td>\n",
       "      <td>11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1141</th>\n",
       "      <td>P299901</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>2.0</td>\n",
       "      <td>20041.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1142</th>\n",
       "      <td>P302956</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华东</td>\n",
       "      <td>20.0</td>\n",
       "      <td>7944.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1143</th>\n",
       "      <td>P303801</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>19408.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1144</th>\n",
       "      <td>P307276</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>1.0</td>\n",
       "      <td>3218.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1145</th>\n",
       "      <td>P314165</td>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2017-3-20</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>172092.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1145 rows × 10 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "          订单号       销售时间        交货时间 货品交货状况   货品 货品用户反馈  销售区域    数量  \\\n",
       "0     P096311 2016-07-30   2016-9-30    晚交货  货品3   质量合格    华北   2.0   \n",
       "1     P096826 2016-08-30  2016-10-30   按时交货  货品3   质量合格    华北  10.0   \n",
       "2     P097435 2016-07-30   2016-9-30   按时交货  货品1     返修    华南   2.0   \n",
       "3     P097446 2016-11-26   2017-1-26    晚交货  货品3   质量合格    华北  15.0   \n",
       "4     P097446 2016-11-26   2017-1-26    晚交货  货品3     拒货    华北  15.0   \n",
       "...       ...        ...         ...    ...  ...    ...   ...   ...   \n",
       "1141  P299901 2016-12-15   2017-3-15   按时交货  货品6   质量合格  马来西亚   2.0   \n",
       "1142  P302956 2016-12-22   2017-3-22   按时交货  货品2     拒货    华东  20.0   \n",
       "1143  P303801 2016-12-15   2017-3-15   按时交货  货品2   质量合格    华东   1.0   \n",
       "1144  P307276 2016-12-22   2017-3-22   按时交货  货品6   质量合格  马来西亚   1.0   \n",
       "1145  P314165 2016-12-20   2017-3-20   按时交货  货品2   质量合格    华东   1.0   \n",
       "\n",
       "            销售金额  month  \n",
       "0       105275.0      7  \n",
       "1     11500000.0      8  \n",
       "2       685877.0      7  \n",
       "3        12958.0     11  \n",
       "4         3239.0     11  \n",
       "...          ...    ...  \n",
       "1141     20041.0     12  \n",
       "1142      7944.0     12  \n",
       "1143     19408.0     12  \n",
       "1144      3218.0     12  \n",
       "1145    172092.0     12  \n",
       "\n",
       "[1145 rows x 10 columns]"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#按月份维度分析\n",
    "data['销售时间'] = pd.to_datetime(data['销售时间'])\n",
    "print(data.info())\n",
    "data['month'] = data['销售时间'].apply(lambda x:x.month)\n",
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "id": "e3136204-094a-4b9b-b0bc-5f83fbf2fe6e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>订单号</th>\n",
       "      <th>销售时间</th>\n",
       "      <th>交货时间</th>\n",
       "      <th>货品交货状况</th>\n",
       "      <th>货品</th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>销售区域</th>\n",
       "      <th>数量</th>\n",
       "      <th>销售金额</th>\n",
       "      <th>month</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>P096311</td>\n",
       "      <td>2016-07-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>2.0</td>\n",
       "      <td>105275.0</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>P096826</td>\n",
       "      <td>2016-08-30</td>\n",
       "      <td>2016-10-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>10.0</td>\n",
       "      <td>11500000.0</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>P097435</td>\n",
       "      <td>2016-07-30</td>\n",
       "      <td>2016-9-30</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品1</td>\n",
       "      <td>返修</td>\n",
       "      <td>华南</td>\n",
       "      <td>2.0</td>\n",
       "      <td>685877.0</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>12958.0</td>\n",
       "      <td>11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>P097446</td>\n",
       "      <td>2016-11-26</td>\n",
       "      <td>2017-1-26</td>\n",
       "      <td>晚交货</td>\n",
       "      <td>货品3</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华北</td>\n",
       "      <td>15.0</td>\n",
       "      <td>3239.0</td>\n",
       "      <td>11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1141</th>\n",
       "      <td>P299901</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>2.0</td>\n",
       "      <td>20041.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1142</th>\n",
       "      <td>P302956</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>拒货</td>\n",
       "      <td>华东</td>\n",
       "      <td>20.0</td>\n",
       "      <td>7944.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1143</th>\n",
       "      <td>P303801</td>\n",
       "      <td>2016-12-15</td>\n",
       "      <td>2017-3-15</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>19408.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1144</th>\n",
       "      <td>P307276</td>\n",
       "      <td>2016-12-22</td>\n",
       "      <td>2017-3-22</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品6</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>马来西亚</td>\n",
       "      <td>1.0</td>\n",
       "      <td>3218.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1145</th>\n",
       "      <td>P314165</td>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2017-3-20</td>\n",
       "      <td>按时交货</td>\n",
       "      <td>货品2</td>\n",
       "      <td>质量合格</td>\n",
       "      <td>华东</td>\n",
       "      <td>1.0</td>\n",
       "      <td>172092.0</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1145 rows × 10 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "          订单号       销售时间        交货时间 货品交货状况   货品 货品用户反馈  销售区域    数量  \\\n",
       "0     P096311 2016-07-30   2016-9-30    晚交货  货品3   质量合格    华北   2.0   \n",
       "1     P096826 2016-08-30  2016-10-30   按时交货  货品3   质量合格    华北  10.0   \n",
       "2     P097435 2016-07-30   2016-9-30   按时交货  货品1     返修    华南   2.0   \n",
       "3     P097446 2016-11-26   2017-1-26    晚交货  货品3   质量合格    华北  15.0   \n",
       "4     P097446 2016-11-26   2017-1-26    晚交货  货品3     拒货    华北  15.0   \n",
       "...       ...        ...         ...    ...  ...    ...   ...   ...   \n",
       "1141  P299901 2016-12-15   2017-3-15   按时交货  货品6   质量合格  马来西亚   2.0   \n",
       "1142  P302956 2016-12-22   2017-3-22   按时交货  货品2     拒货    华东  20.0   \n",
       "1143  P303801 2016-12-15   2017-3-15   按时交货  货品2   质量合格    华东   1.0   \n",
       "1144  P307276 2016-12-22   2017-3-22   按时交货  货品6   质量合格  马来西亚   1.0   \n",
       "1145  P314165 2016-12-20   2017-3-20   按时交货  货品2   质量合格    华东   1.0   \n",
       "\n",
       "            销售金额  month  \n",
       "0       105275.0      7  \n",
       "1     11500000.0      8  \n",
       "2       685877.0      7  \n",
       "3        12958.0     11  \n",
       "4         3239.0     11  \n",
       "...          ...    ...  \n",
       "1141     20041.0     12  \n",
       "1142      7944.0     12  \n",
       "1143     19408.0     12  \n",
       "1144      3218.0     12  \n",
       "1145    172092.0     12  \n",
       "\n",
       "[1145 rows x 10 columns]"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['货品交货状况']= data['货品交货状况'].apply(lambda x:x.strip())\n",
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "65003f28-7628-458b-839b-b1f3da46b281",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>货品交货状况</th>\n",
       "      <th>按时交货</th>\n",
       "      <th>晚交货</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>month</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>189</td>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>218</td>\n",
       "      <td>35</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>122</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>238</td>\n",
       "      <td>31</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>101</td>\n",
       "      <td>25</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>146</td>\n",
       "      <td>18</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品交货状况  按时交货  晚交货\n",
       "month            \n",
       "7        189   13\n",
       "8        218   35\n",
       "9        122    9\n",
       "10       238   31\n",
       "11       101   25\n",
       "12       146   18"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "gp_by_month = data.groupby(by=[\"month\",\"货品交货状况\"]).size().unstack()\n",
    "gp_by_month"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "id": "7c1618c3-c59f-4a18-b069-bff70a21aeb6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>货品交货状况</th>\n",
       "      <th>按时交货</th>\n",
       "      <th>晚交货</th>\n",
       "      <th>按时交货率</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>month</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>189</td>\n",
       "      <td>13</td>\n",
       "      <td>0.935644</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>218</td>\n",
       "      <td>35</td>\n",
       "      <td>0.861660</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>122</td>\n",
       "      <td>9</td>\n",
       "      <td>0.931298</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>238</td>\n",
       "      <td>31</td>\n",
       "      <td>0.884758</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>101</td>\n",
       "      <td>25</td>\n",
       "      <td>0.801587</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>146</td>\n",
       "      <td>18</td>\n",
       "      <td>0.890244</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品交货状况  按时交货  晚交货     按时交货率\n",
       "month                      \n",
       "7        189   13  0.935644\n",
       "8        218   35  0.861660\n",
       "9        122    9  0.931298\n",
       "10       238   31  0.884758\n",
       "11       101   25  0.801587\n",
       "12       146   18  0.890244"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "gp_by_month['按时交货率']  = gp_by_month['按时交货']/(gp_by_month['按时交货']+gp_by_month['晚交货'])\n",
    "gp_by_month"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "id": "1aa2f114-de27-41a4-aeb7-0ae422ac115c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>货品交货状况</th>\n",
       "      <th>按时交货</th>\n",
       "      <th>晚交货</th>\n",
       "      <th>按时交货率</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>销售区域</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>183</td>\n",
       "      <td>4</td>\n",
       "      <td>0.978610</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>310</td>\n",
       "      <td>16</td>\n",
       "      <td>0.950920</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>10</td>\n",
       "      <td>1</td>\n",
       "      <td>0.909091</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>226</td>\n",
       "      <td>27</td>\n",
       "      <td>0.893281</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华东</th>\n",
       "      <td>268</td>\n",
       "      <td>39</td>\n",
       "      <td>0.872964</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>17</td>\n",
       "      <td>44</td>\n",
       "      <td>0.278689</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品交货状况  按时交货  晚交货     按时交货率\n",
       "销售区域                       \n",
       "泰国       183    4  0.978610\n",
       "马来西亚     310   16  0.950920\n",
       "华南        10    1  0.909091\n",
       "华北       226   27  0.893281\n",
       "华东       268   39  0.872964\n",
       "西北        17   44  0.278689"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#按销售区域维度分析\n",
    "gp_by_area = data.groupby(by=[\"销售区域\",\"货品交货状况\"]).size().unstack()\n",
    "gp_by_area['按时交货率']  = gp_by_area['按时交货']/(gp_by_area ['按时交货']+gp_by_area ['晚交货'])\n",
    "gp_by_area = gp_by_area.sort_values(by='按时交货率',ascending=False)\n",
    "gp_by_area\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "id": "3546fe6b-8731-47ee-b3c4-c86b9546a211",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>货品交货状况</th>\n",
       "      <th>按时交货</th>\n",
       "      <th>晚交货</th>\n",
       "      <th>按时交货率</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>货品5</th>\n",
       "      <td>183</td>\n",
       "      <td>4</td>\n",
       "      <td>0.978610</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品6</th>\n",
       "      <td>309</td>\n",
       "      <td>7</td>\n",
       "      <td>0.977848</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品1</th>\n",
       "      <td>27</td>\n",
       "      <td>2</td>\n",
       "      <td>0.931034</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品3</th>\n",
       "      <td>212</td>\n",
       "      <td>26</td>\n",
       "      <td>0.890756</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品2</th>\n",
       "      <td>269</td>\n",
       "      <td>48</td>\n",
       "      <td>0.848580</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品4</th>\n",
       "      <td>14</td>\n",
       "      <td>44</td>\n",
       "      <td>0.241379</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品交货状况  按时交货  晚交货     按时交货率\n",
       "货品                         \n",
       "货品5      183    4  0.978610\n",
       "货品6      309    7  0.977848\n",
       "货品1       27    2  0.931034\n",
       "货品3      212   26  0.890756\n",
       "货品2      269   48  0.848580\n",
       "货品4       14   44  0.241379"
      ]
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#按货品维度分析\n",
    "gp_by_goods = data.groupby(by=[\"货品\",\"货品交货状况\"]).size().unstack()\n",
    "gp_by_goods['按时交货率']  = gp_by_goods['按时交货']/(gp_by_goods ['按时交货']+gp_by_goods ['晚交货'])\n",
    "gp_by_goods = gp_by_goods.sort_values(by='按时交货率',ascending=False)\n",
    "gp_by_goods"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "id": "baf45bc0-103f-423d-931f-12d831279089",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>货品交货状况</th>\n",
       "      <th>按时交货</th>\n",
       "      <th>晚交货</th>\n",
       "      <th>按时交货率</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品</th>\n",
       "      <th>销售区域</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>货品1</th>\n",
       "      <th>西北</th>\n",
       "      <td>3.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品5</th>\n",
       "      <th>泰国</th>\n",
       "      <td>183.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>0.978610</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品6</th>\n",
       "      <th>马来西亚</th>\n",
       "      <td>309.0</td>\n",
       "      <td>7.0</td>\n",
       "      <td>0.977848</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"2\" valign=\"top\">货品1</th>\n",
       "      <th>华北</th>\n",
       "      <td>14.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.933333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>10.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.909091</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品3</th>\n",
       "      <th>华北</th>\n",
       "      <td>212.0</td>\n",
       "      <td>26.0</td>\n",
       "      <td>0.890756</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品2</th>\n",
       "      <th>华东</th>\n",
       "      <td>268.0</td>\n",
       "      <td>39.0</td>\n",
       "      <td>0.872964</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品4</th>\n",
       "      <th>西北</th>\n",
       "      <td>14.0</td>\n",
       "      <td>44.0</td>\n",
       "      <td>0.241379</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品2</th>\n",
       "      <th>马来西亚</th>\n",
       "      <td>1.0</td>\n",
       "      <td>9.0</td>\n",
       "      <td>0.100000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品交货状况     按时交货   晚交货     按时交货率\n",
       "货品  销售区域                       \n",
       "货品1 西北      3.0   NaN  1.000000\n",
       "货品5 泰国    183.0   4.0  0.978610\n",
       "货品6 马来西亚  309.0   7.0  0.977848\n",
       "货品1 华北     14.0   1.0  0.933333\n",
       "    华南     10.0   1.0  0.909091\n",
       "货品3 华北    212.0  26.0  0.890756\n",
       "货品2 华东    268.0  39.0  0.872964\n",
       "货品4 西北     14.0  44.0  0.241379\n",
       "货品2 马来西亚    1.0   9.0  0.100000"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#货品和销售区域结合\n",
    "gp_by_area_and_goods = data.groupby(by=[\"货品\",\"销售区域\",\"货品交货状况\"]).size().unstack()\n",
    "gp_by_area_and_goods['按时交货率']  = gp_by_area_and_goods['按时交货'].fillna(0)/(gp_by_area_and_goods ['按时交货'].fillna(0)+gp_by_area_and_goods ['晚交货'].fillna(0))\n",
    "gp_by_area_and_goods = gp_by_area_and_goods.sort_values(by='按时交货率',ascending=False)\n",
    "gp_by_area_and_goods"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "id": "22a568ee-68a2-4570-b06b-4dda3a27ea02",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>货品</th>\n",
       "      <th>货品1</th>\n",
       "      <th>货品2</th>\n",
       "      <th>货品3</th>\n",
       "      <th>货品4</th>\n",
       "      <th>货品5</th>\n",
       "      <th>货品6</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>month</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>283.0</td>\n",
       "      <td>491.0</td>\n",
       "      <td>2041.5</td>\n",
       "      <td>414.0</td>\n",
       "      <td>733.0</td>\n",
       "      <td>1649.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>1413.0</td>\n",
       "      <td>3143.0</td>\n",
       "      <td>1045.0</td>\n",
       "      <td>1188.0</td>\n",
       "      <td>2381.0</td>\n",
       "      <td>1181.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1693.0</td>\n",
       "      <td>3020.0</td>\n",
       "      <td>2031.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>271.0</td>\n",
       "      <td>343.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>4.0</td>\n",
       "      <td>28420.0</td>\n",
       "      <td>1684.0</td>\n",
       "      <td>2542.0</td>\n",
       "      <td>1984.0</td>\n",
       "      <td>2358.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>20.0</td>\n",
       "      <td>2042.0</td>\n",
       "      <td>100.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>14.0</td>\n",
       "      <td>383.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>4.0</td>\n",
       "      <td>18205.0</td>\n",
       "      <td>2172.0</td>\n",
       "      <td>1082.0</td>\n",
       "      <td>350.0</td>\n",
       "      <td>2487.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品        货品1      货品2     货品3     货品4     货品5     货品6\n",
       "month                                                 \n",
       "7       283.0    491.0  2041.5   414.0   733.0  1649.0\n",
       "8      1413.0   3143.0  1045.0  1188.0  2381.0  1181.0\n",
       "9      1693.0   3020.0  2031.0     NaN   271.0   343.0\n",
       "10        4.0  28420.0  1684.0  2542.0  1984.0  2358.0\n",
       "11       20.0   2042.0   100.0     3.0    14.0   383.0\n",
       "12        4.0  18205.0  2172.0  1082.0   350.0  2487.0"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#销售潜力分析\n",
    "gp_by_month_to_potential = data.groupby(by=[\"month\",\"货品\"])['数量'].sum().unstack()\n",
    "gp_by_month_to_potential\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "id": "6fa41e2a-2724-4776-96d0-0cf3ab18e9e0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAGsCAYAAADDvZ3KAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQAAhJFJREFUeJztvQecVPXZ9n/ttO29N5a29KaAgoJglGDDPIk8CWr+SSwxGlts76uxPUZjIW+wJJY3atQnUXwfjbFEjKiICqICIh0WWLbAFrb3PvP/3L8zZ3ZmG9vPlOvr5zhnzpny29ll5pq7XHeQw+FwgBBCCCHEhzAZvQBCCCGEkIFCAUMIIYQQn4MChhBCCCE+BwUMIYQQQnwOChhCCCGE+BwUMIQQQgjxOShgCCGEEOJzWOCH2O12FBUVITIyEkFBQUYvhxBCCCH9QKzp6urqkJaWBpPJFHgCRsRLZmam0csghBBCyCAoLCxERkZG4AkYibzoL0BUVJTRyyGEEEJIP6itrVUBCP1zPOAEjJ42EvFCAUMIIYT4Fv0p/2ARLyGEEEJ8DgoYQgghhPgcFDCEEEII8Tn8sgamv3R0dKCtrc3oZfg0VqsVZrPZ6GUQQggJMCyB2mdeUlKC6upqo5fiF8TExCAlJYWeO4QQQkaNgBQwunhJSkpCWFgYP3iHIAQbGxtx4sQJdT01NdXoJRFCCAkQLIGYNtLFS3x8vNHL8XlCQ0PVpYgYeU2ZTiKEEDIaBFwRr17zIpEXMjzoryXriQghhIwWASdgdJg2Gj74WhJCCBltAlbAEEIIIcR3oYAxEJnVpFNTU4PKykpD10MIIYT4ChQwBnHgwAFMnToVr7/+urr+8MMP48Ybb1T7DQ0NePDBB7vVlCQmJqrZTtK27L6FhITgvvvuM+TnIIQQQoyAAsYASktLceGFF2LlypVYtWqVOmaxWNDa2oo1a9Zg0qRJ2LFjB4qKijzuJ+Jl165dqovKfbvzzjuViCGEeCkOB9DeavQqCPErAq6N2mhyc3NxwQUXoL6+HlOmTFHXN2zYgPXr12P//v2qFXnjxo3Izs7udl8ROb1hMlGLEuK1bH0BWHc7cNn/AJOWG70aQvwCfuqNIlLnsmTJEtx7771YtGiRMoJ75ZVXsHv3bowbNw6XXHIJnn76aSVe7Ha7uk1+fr7r/u3t7b0+ttyeEOKlbPurdrn9FaNXQojfwAjMKBIdHa3EitStvPHGG8pU74EHHlDn/vrXv+Lmm29WhnBiBldWVqY2d3dbicDMmzevx8e+/fbbR+3nIIQMgKp84MQ+bT93I9DeAliCjV4VIT4PBcwoI+JFWLFiBTIzM13Hr7zySixbtkwV8OreKhkZGbDZbK7bHDx40IAVE0KGRM6/O/fbGoD8L4EJZxu5IkL8AqaQDOKxxx7DZZddhoSEBNd2yimnqLSRbAUFBQgPD1e3lZSSRF/0TcSNnL/mmmtUtEY/Lvv/63/9L6N/NEKIOwc/0C6tTvfvQx8ZuhxC/AUKGIOQIt4333wT5eXlyMnJQV5entqXTWpd3GcKWa1W7NmzRx2XLSsrS3UkBQcHq5oZ/fjvf/97diMR4k001wJ5m7T9s5xp3kPrDV0SIf4CBYxBSP2LjkRS7r77bo/z7gW7PVn1i8DpqfOI3UiEeBFHNgD2NiB+IjD/asBkASoOAZW5Rq+MEJ+Hn3YGIQW7EkmR1ul169YpEfPQQw8p/xfZT0tL61PAiGcMZxAR4iP1L5POA0KigTELteuHPjZ0WYT4AxQwBiAtzz/5yU/w7rvvYunSpSr1I23UR48exeLFi7Ft2zZV4yJt1vrtZ8yY4ap1kdbq5uZmFcW5/vrrXccliuMe2SGEGIi9ozNdJAJGyF6mXTKNRMiQoYAZZa6++mpVuzJr1ixs3rwZ7733Hm655RaEhYXhxRdfVPORzjrrLCVw9LSSjBRwr4GZOXOmisC0tLR41MBIK7aMGyCEeAHHtgGNFc7IywLtWPb3tcu8L4DWRkOXR4ivE+TQv+b7EbW1tcpzRYzjpNjVHYlcSKRDIh5GFLyKQJERAXPmzFFCpjfED0ZSRL4gSIx+TQnxSj7+L2DT48CMlcDKF7Vj8nb7xEygphC47A1gklPQEEJO+vndFUZgRhnxfjn99NP7FC+CjBTwBfFCCOmFg876l8nndx6TujWmkQgZFihgCCFkuKnKA8r2A0FmYOI5nuf0NNKhD7WIDCFkUFDAEELISEVfss4AQmM9z407CzDbgOoCoPyQIcsjxB+ggCGEkOEm5wPP7iN3bOHA2EXaPtNIhAwaChhCCBl2993N3etfekwjUcAQMlgoYHwU6WbSkWrtyspKQ9dDCHFy5JNO9934CX0LGBns2FI3qssjxF+ggPFBDhw4gKlTp+L1119X1x9++GHceOONal+mWT/44IPKO8Yd6WiSljSZhu2+SdvzfffdZ8jPQYhfkvNh7+kjHRE2ceM1oZP72agtjRB/ggLGxygtLcWFF16IlStXYtWqVeqYuPCKsd2aNWswadIkNY5AvGbcEfGya9cuVFdXe2x33nlnr94tX375JSZPnjwqPxchfue+21v6SIdpJEKGhGVodyejSW5uLi644AI1yXrKlCnq+oYNG7B+/Xo1U0m8YzZu3Ijs7Oxu9xWR0xs9DYDcvn07fvjDHyI0NHTYfw5C/JZjW53uuzFAptN9tzfED+br54BDH2nt1JxtRsiAoIBR5pgONLUZM0Mo1Gru11BGqXNZsmQJHn30Ubz11ltqza+88oqKoogD7rRp09RYAX12kowjePXVV9XAyK7Trbsit3dH0lA/+tGPcMMNN6jxBoSQfnLwg05xYj7J22vWIsASCtQVAaV7gZQZo7JEQvwFChhAiZdp9znz1qPMvt8tR5jt5L8GsVbevXu3qlt544031NDGBx54QJ2TGUgy3VrGD5jNZpSVlaktNTXVIwIzb968Hh/79ttv97hutVpV+ujQoUMUMIQMdvr0ybCGAOOXaPeRNBIFDCEDggLGhxDxIqxYsUKNJNC58sorsWzZMhU5ESSik5GRAZvN5rrNwYMH+/08cr/09HQlYAgh/aTyKFB2wOm+e27/7iORGiVgPgIW3zrSKyTEr6CAcaZxJBJi1HMPlMcee6zPtum1a9e6im+lHkYGLepI5CY/Px8PPfSQiq7o6StJSd12221YvXr1oH4OQgKeHHf3Xe3LxkmZ6JyLVPg10FTV3bWXENIrFDDOiEV/0jjeghTxvvnmm1i6dKkSMhIxiYiIcEVpJI3kng7as2ePKvoVxo4dqzqSZJik1Mxce+216rjU1jQ2Nhr0ExHiR/Uv/Ukf6cRmAYlTtMjNkU+BGT8aseUR4m+wjdoHkSiKzjXXXIO7777b47x7wW5PBcIicHrqPOrpGCGkn+67+Sdx3+0N13Tqj4Z/XYT4MfzE8kGkYFe6i6R1et26dUrESEpI/F9kPy0trU8BI54x/el8IoQMxH23HYjP7t1992R+MIc/kpbAEVkeIf4IBYyPIS3PP/nJT/Duu++qFNLvf/971UYtdS6LFy/Gtm3bUFBQoGpa9NvPmDFDdSHJJvUvzc3NKopz/fXXu45LFMc9skMIGcT06ckDSB/piF+MLRJoKAOKvxv2pRHir1DA+BBXX321ql2ZNWsWNm/ejPfeew+33HILwsLCVEGuzEcS/xcROHpaSUYKSA2MpJVkmzlzporAtLS0qBoY/bi0Ysu4AXdEIOXl5Rn00xLig+67kwaYPhIsNmDCUm2faSRC+k2QQ/+q7kfU1tYq3xQxf5OCVXck+iDRCola9Gah762IQJERAXPmzFFCpjfED0ZSRF0FyUjhy68pIUMmfwvw0nma++4dR05uYNcT3/438O6NQPo84JefjMQqCfH5z++u+E7rDVHeL+7+L70hIwUIIaNEju6++/3BiRf3durj24GGciA8YfjWR4ifwhQSIYQMR/3LpCF4SUWlAikzxZEJOMwIDCH9gQKGEEIGS2UuUH4QMFn6777bG5xOTciAoIAhhJDBkuOcoTZmYf/dd0/aTv2xVhhMCOkTChhCCBmq++5Azet6Qgp4pRC4uRo4tm3oj0eIn0MBQwghg6G5ptN9dyDjA3pDCoAnnqPtM41EyEmhgPFRpKVaR9rN+hruSAgZAQ473XcTJg3cffekdTDO1BQhpFcoYHyQAwcOYOrUqXj99dfV9Ycffhg33nij2m9oaMCDDz6oDOzcEU8Y6amXYY/um/i23HfffYb8HIT4xfTp4Yi+6EyQCEwQULIbqC0avsclJNAFzDvvvIPx48cr63kxU5NZPMJNN92kjNP0beLEia77iAvs/PnzERsbizvuuMNlcS989tln6oM4ISEBa9as8XgumbYs835krs/atWuH/pP6CaWlpbjwwguxcuVKrFq1Sh2T34e468prOGnSJDUTSQzv3BHxsmvXLlRXV3tsd955Z4/mcw888ADi4uKUYd4Pf/hD1NXVjdrPSIjX09HemeYZjvoXnYhEIP3UzmJeQsjQBcyRI0dwxRVX4NFHH8Xx48fVB6VY2wsyf+f9999HVVWV2uQDVBC7+hUrVmDu3LnqNvv27cPLL7+szpWVleHiiy/GpZdeii1btuDVV1/Fp59+6hI9l19+Oe699158+OGHKkJw8OBBBDq5ublYsmQJ6uvrMWXKFHX9hRdewPr16/HBBx+o39HGjRvx1ltvKfHnjoic3ug6hVp+F7L9+9//xt69e5VQld87IcTJsW+Apiqt6DbjtOF97GynnwzrYAjpk37bRuofYj/+8Y/V9euuu05FAmSOjnzIyQyeiIgIj/vIh6rUZ0hkQOb1SKpDBgiKEJIPSImuiEiRqI2IFJnnc/bZZ6sPZbnUBdINN9yAv/3tb2rick+IUJLN3Yp4QEhUqK0RhmANk5HRJ72ZvI4iXuR3IAJFIlmvvPKKiqKIhf+0adPUbCN9gKP8PuQ11oWM/J56Q27ftb5GHvu007Q3ZpmttHXr1iH+oIT4YffRUNx3eyN7GbDxYeDIRqC9VZuVRAjpRr//5V100UUe1yUikp2djd27d6sPQEkpSWRGPmT/8pe/YMyYMdi5cycWLFigxIsgQwglCiPIOREpIl4E+bCUdIZ+7vzzO8Oycu53v/tdr2t75JFHVMpj0Ih4eTgNhvDbIsAWftKbyWwIea2lbuWNN95Qk6P1n1kGMd58881qBpLZbFbRLdlSU1M9IjDz5s3r8bFvv/12j+v676Hr75oQ0sX/ZTDTp09G6hwgPFGbTl34FTDurOF/DkL8gEF9dZB6iz/+8Y+49dZblSCZPHky/vSnP6laFpmOfM0116j0g0RCJDqgI2JFPmAlzSTnJGrgXqOh1210vZ/7uZ6466671Fp05P79mRnka4h4ESQt5/7zXXnllVi2bJkq4NVf54yMDNhsnd/cBpuCy8nJwT//+U98++23Q14/IX7BcLrv9oSkdGU20s7XtDQSBQwhwydg7r//foSHh6sUj9VqVfUqOs8884wSHyIi5Ft/16nJUjDa2NjY7Zx+XC2qj3M9Ibftazpzv9I4EgkxAnnuAfLYY4/12TYtRc8iKgWJnMikaB2J3OTn56t0nKTs9AiYpKRuu+02rF692nVbiayJOJLf8/Tp0we8TkL8evZR1hlASPTIPEe2LmA+Ar7fc+qckEBnwAJmw4YNqtbiq6++UuKlp0nI8sFXXFysulikINcd6WaRyICckzRH1+NCX+dGBPkQ70cax1uQIl7p0lq6dKkSMvLa6PVHEqWRKJeO/I7kdyBFv8LYsWNVREsEn/wer732WnVcamu6ikRpx5bH/8Mf/jCqPx8hPjF9etIwdh91ZcLZQJAZKDsAVOUDsZ5F+YSQAbZRyzd56RqSDz49/SOt0a+99prrNtJRJF0tkuKQ9mm57n5/KbYVgdL1nHQupaenq/2+zhEtiqIj6bq7777b47x7wa4eYXFHBE7XziPB/dh7772niq//8Y9/uGqYCAl4lPvulyNX/6ITGgtknq7tH/5o5J6HkEAQME1NTaqQ9wc/+IHyBZEogGxSmHvPPffgk08+Ue288o3+Zz/7mfrQk04YSSW99NJL6jGkC+ncc89VH6DSQr1582Z8/PHHynRNUhfLl2vtg5dccokyaZOiVXmOp556ynWOQBXsSneRdIatW7dOiRhJCYnQk33p7upLwEgNU0/HdeRxRahKXZMIUfkd9JXCIyRgUIMWne67ceNH9rkkjSRIGokQ0h1HP3n77bfFga7bdvToUcedd97piI6OdsTFxTluuukmR319vet+77zzjiMsLMwRHx/vSExMdOzdu9d17tlnn3VYrVZHbGysY9y4cY6SkhLXud/+9rcOm83miIqKcsydO9fR2NjY36U6ampq1NrksitNTU2Offv2qUtfpKOjw3H48GHHE0884UhKSnKsWbPG0dDQ4Ljyyisd4eHhjrPPPtvx/vvvO+x2u7r91KlTHWaz2bXJ63Ls2DHHDTfc4DCZTK7jsn/PPfeo+/zmN7/p9nvOysrqdU2+/poS0m/evNrhuD/K4fhQ+7cyohTv1p7rwWSHo5X/tkhgUNPH53dX+i1ghkJxcbHjX//6l6O8vLzbudzcXMe6descdXV13c6J2Fm/fr2jpaVlQM/nrwLmqquuclgsFiUI//M//9Px9ddfe5yvrKx03H///Y6IiAjHXXfdpY5NnDjRsX//ftdtZs6cqV7zX/7yl0pA6rz88suOJ598clDr8uXXlJB+097mcDwyRhMVeZtH/vnkS8j/maI936GPRv75CPExARMk/4OfIWkr8U0R8zcpWHWnublZ1eJIp1RPFvrejBjMSTu5eO701XUlfjCSIpL5R6OBL7+mhPQbqX156XytPuX2w8NvYNcT794EfPsKcPq1wPmPjfzzEeLFn99d4TBHH0LqUU4//fSTtoxLJ9hoiRdCAoaRdN896XRqjhUgpCsUMIQQYtT06ZMxfglgsmrmeRVHRu95CfEBKGAIIeRkiHgoz3G6754zes8bHKkZ5gmMwhDiAQUMIYT0N/qSdebIue/2BtNIhPQIBQwhhPS3/mU000ddBUzeJqBVm3dGCKGAIYSQvmmqBgq2jLz7bm8kZAMxWUBHK3D089F/fkK8FAoYH0VaqnWk3ayv4Y6EkCFw5BOn++7kkXff7QlxzWYaiZBuUMD4IAcOHMDUqVPVuAV9RMONN96o9hsaGtQQRhnP4I60VUtPvQx7dN/Et+W+++7r8XkKCgqwbds2NXqAEAT69Gkjoi86LgHzkdinG7cOQrwIChgfo7S0FBdeeCFWrlyJVatWqWMWi0WJDBm+OGnSJDUTSQzv3BHxsmvXLlRXV3tsd955Z4/mc7feeitOPfVUXHbZZcqgTkQTIQFHR3tn1GMkp0+fjLGLAEsIUFOoTagmhGCU3Ji8GzEjbmpvMuS5Qy2hfQ5WdCc3NxcXXHCBGq44ZcoUdX3Dhg1qiKYMYBQDu40bNyI7O7vbfUXk9EbXydTyGP/617/U44vwueKKK/Doo4/i5ZdfHsRPSIgPU/g10FwNhMYBmacZtw5bGDB2sTaZWgRV0lTj1kKIl0ABIzV67U04/TXn6PpR5uvLvkaYNeykt5M6lyVLligh8dZbbynR9corr6goikRIpk2bhqefflrd1m63q0ngr776qppaLbS3t/f62HJ7d8Tp9/nnn3fZOJ9yyin46CNOxCUBSI6b+67JbOxaZA1KwHwEnHmzsWshxAuggPERZDbE7t27Vd3KG2+8gY6ODjzwwAPq3F//+lfcfPPNagaS2WxGWVmZ2lJTUz0iMPPmzevxsW+//XaP6wsXLnTtl5eXq8e/6aabRuxnI8Rr8Yb6F53sZYDoKemIaq4ZfT8aQrwMChhnGkciIUY9d38R8SKsWLFCzUXSufLKK7Fs2TJVwCtISiojIwM2m811m4MHDw54bRKFEWEk0Rx5DkICzn234pDmvjvhe0avBogbB8Rna2vK3QhM+4HRKyLEUChgnB/4/UnjeAuPPfZYn23Ta9euxeTJk9W+1MPIpGgdidzk5+fjoYcewosvvuiqv5GU1G233YbVq1e7bvuzn/1MRXGuu+46/PnPf8YNN9wwoj8XIV5pXmeE+25faSQRMFIHQwFDAhx2IfkgUsT75ptvqvROTk4O8vLy1L5sUusiaSQdq9WKPXv2qOOySU2M1LZInYvUzOjHf//733frRpLbXHTRRfjd736nxA4hATk+YLKB3Uc9pZEEtlMTQgHji0gUReeaa67B3Xff7XHevWC3pw4nEThdO48E/diTTz6J1157zXVcUlHuooiQgHLfNWJ8QG/IYEdrOFBfCpTsMno1hBgKU0g+iNSlSCRFWqfXrVuHrVu3qpSQ+MOIoElLS+tTwIhnTF+t2+PHj8dVV12l0kfyWH/4wx9w6aWXjtjPQ4jXcfhjzX03cYpWe+ItWIKB8UuBg+9raaTU2UaviBDDYATGx5CW55/85Cd49913sXTpUpX6kTZqqXNZvHixcs4VB12padFvP2PGDNWFJJvUvzQ3N6sozvXXX+86LlEcPbIjRcJicHf55Zdj0aJFOP/883HHHXcY/JMTYkD6yJuiLz2lkQgJYChgfIirr75a1aXMmjULmzdvxnvvvYdbbrkFYWFhqkZF5iNJx5AIHD2tJCMF3GtgZs6cqSIwLS0tHjUw0iot4wbcnXjFzVfasR955JEeU06E+K/77kfeV//SVcAc2wo0cgYaCVyCHPpXdT+itrZW+aaI+ZtuxqYj0QeJVkjUoicLfW9GBIqIijlz5igh0xviByMpIndBMpL48mtKSDfyNgEvX6i5795x2HgDu5545gzgxF7gkheBmSuNXg0ho/L53RV+rfYhxPvl9NNP71O8CDJSYLTECyF+2z7tDe67J00jcTo1CVwoYAghpMf2aS+sf+k6nVoVG3d2JRISSFDAEEKITvlhoELSRlZgwjnwWmSwZHA00FgBFO0wejWEGAIFDCGEdI2+jBX33b7z74ZiFoF1trbPNBIJUChgCCGkW/u0F3Yf9ZZGooAhAQoFjI8iHUk6Uq3d12wkQkg/aKoC8r/0/voXnYnnapeSQqo/YfRqCBl1KGB8kAMHDmDq1Kl4/fXX1fWHH34YN954o9qXidQPPvig8n9xR7qSpCVNJlq7b9L2fN999xnycxDiVRz+BHB0AIlTgdix8Hoik4HUOZ3FvIQEGBQwPkZpaakaGbBy5UqsWrVKHRMnXTGnW7NmDSZNmoQdO3Yovxh3RLzs2rUL1dXVHps47vbl3SK3kZECMjCSkIBon560HD4D00gkgOEsJB8iNzcXF1xwgZpGPWXKFHV9w4YNWL9+vZqLJP4vGzduRHZ2drf7isjpjb5cdmWEQElJybD9DIR4JR1twGEvdt/tS8B8vho4vEFzEDbzLZ0EDvxrh0yld8DR1GTIcweFhvY5WNG9zmXJkiV49NFH8dZbb6k1v/LKKypCIg6406ZNU6MB9PlHMlLg1VdfVUMfu06o7orcvic+//xzNXMpPj5+0D8fIT5BwVdAcw0QFg9kzIfPkH6q5hjcVAkc+0abVk1IgEABIwKmqQkHT51ryHNP/nY7gsLCTno7sVbevXu3qlt544031ODFBx54QJ2TOUYyoVpGCJjNZjW/SDZJ/bhHYObNm9fjY99+++3djsmspF/96ld46qmn8L//9/8e0s9IiM90H3mz+25PyFqlmHf3/wA5H1LAkICCAsaHEPGiT4uWsQI6V155JZYtW6YKeAWJ6GRkZMBms7luc/DgwQE9lxQGSz2NDIakgCF+jzdPnz4ZUrMjAkYGUC7TvtQQEghQwDjTOBIJMeq5B8pjjz3WZ9v02rVrMXnyZLUv9TAyaFFHIjf5+fl46KGH1ARrPX0lKanbbrsNq1evVvU0zz33nCoGJiSw3He/B59D1hxk0oY71hwDojOMXhEhowIFjDNi0Z80jrcgRbxvvvkmli5dqoSMRFoiIiJcURpJI+lYrVbs2bNHFf0KY8eOVR1JMhBSamauvfZadVxqaxobG5WQueaaa5TASUtLM+gnJGQUyXF2H41d5N3uu70RFqfV7RR+rUVh5l1h9IoIGRXYRu2DSBRFR8TG3Xff7XHevWC3pwJhETg9dR7JsYKCAmzatEl1H+leMXJs1qxZeO2114b9ZyHEcA7+2/e6j3qdTu3spCIkAGAExgeRgl3pLpJUz7p167B161YVMRF/GBE07pGTngSMeMb01vmUnp7ukXISFi1apEzz5sxxmmYR4k/uuwVbfM//pStSfLzhISB3I9DeAliCjV4RISMOIzA+hrQ8S2GttDdLCun3v/+9aqMW0bF48WJs27ZNRUwkFaTffsaMGaoLSTapf2lublZRnOuvv951XKI4ckz2Jc3kvskxKQrW01SE+A2HPvYt993eSJkFRKQAbQ2d4xAI8XMoYHyIq6++WtWuSDpn8+bNeO+993DLLbcgLCxMFeTKfCTxfxGBo6eVZKSA1MBIWkm2mTNnqgiMtElLDYx+XFqxZdxAT4gLrwgZQvy2/sUXZh/1hURUs52zkZhGIgFCkEP/qu5H1NbWKt8UMX+TglV3JPog0QqJWvRloe+NiECREQGSyhEh0xviByMpot4EyXDjy68pCXD33T9M0AzsrlwPjDkdPs2+d4D/+RkQnw3cuM3o1RAy7J/fXWENjA8h3i/u/i+9ISMFCCEDcd/t2eTRpxi/FDBZgIpDQGUuEDfe6BURMqIwhUQICXD33eW+5b7bGyHRwJiFnbU9hPg5FDCEkMCePu3r9S89tlNzOjXxfyhgCCGBR7mkWY5o7rvjz4bfIO3UQt4XQGuj0ashZEShgCGEBG70xVfdd3sjcQoQnQm0NwN5m4xeDSEjCgUMISRw61982X2313ZqppFIYEAB46NIS7WOtJv1NdyREOJGY6XWgeSr06f7m0Y69KFMaTV6NYSMGBQwPsiBAwcwdepUZe8vPPzww7jxxhvVfkNDAx588EFlYOeOeMJIT70+30jfxLflvvvuM+TnIMQQDn+iue8mTQNis+B3jDsLMNuA6gKt1ocQP2XAAuadd97B+PHjlb28GKrJPB5B3F7nz5+P2NhYNQjQ3R/vs88+Ux+4CQkJWLNmjcfjyVRlmesj83vWrl3rcU6cYpOTk9XzbdiwYfA/pR9RWlqqZh6tXLkSq1atUsfkdyHuuvLaTpo0CTt27FCGd+6IeNm1axeqq6s9tjvvvLNH8zlx+1VTup2buAAT4lfuu/4YfRFs4Vptj8A0EvFjBiRgjhw5giuuuAKPPvoojh8/rj4s5YNNbOlXrFiBuXPnqlk8+/btw8svv6zuU1ZWhosvvhiXXnoptmzZgldffRWffvqpS/RcfvnluPfee/Hhhx+qSMDBgwfVObl+++234y9/+Qv+/ve/q+epqKhAIJObm4slS5agvr4eU6ZMUddfeOEFrF+/Hh988IH6/WzcuBFvvfWWEoXuiMjpja6TqRsbG9VjiaNvVVWV2v70pz+N2M9FyKi67+oeKf5W/9JjGokChvgvAxIwEm0R8fLjH/9YRUauu+469W1fPjylDkMiABMmTFApDZnNI4hgkeiKiJTs7GwlUvRz8uF79tlnK3EiM3puuOEG/O1vf1Pnnn32Wfz85z/HD37wA5xxxhnq8p///GeP6xIBJfbD7ttAkGhRW0uHIVt/JznI6yviRV5HmQ4t93vllVewe/duZeF/ySWXqIiVvMYywFFuI4MbdWTeUW/I7d2R36lEYCTtpKeaQkNDB/SaEuKVyOTpFnHfTQDS58LvBYwMdmypM3o1hIwIAxolcNFFF3lcl2iJfGDu3LkTCxYsUEMFBfnwkyiMIOdEpEgaQjjttNNU2kI/d/75nd+C5Nzvfvc717nLLrvM49znn3/eYyrjkUcewQMPPIDB0t5qx19u/gxGcM2TS2ANPrkLqMyGELEiYuKNN95Qk6P1n1kGMd58880qYmI2m1XUS7bU1FSPCMy8eT3bpUuky51vvvkGx44dUwJGamkkevbEE0/0OX+JEJ/goO6++33/cN/tjfgJ2igBGSmQ+xkw1fO9mxB/YNCzkKTm4o9//CNuvfVWHD58WEUBdESsyAeppB4kGjJt2jSPWgy9PkPOud+vv+e6ctddd6l16Mh9+zMzyNcQ8SJIus7957vyyiuxbNkyVcCrv/4ZGRmw2Wyu2+ipuf4gt5UIzn/913+pOhlJ8z3++OMu4UmITyLRTn+ZPt0fRKR9/ZyWRqKAIX7IoAXM/fffj/DwcBURueeee7p9O5fCUKmlkG/+7uf04+rJB3muK3K7oUQHLDaTioQYgTz3QHnsscf6bJuWYujJkyerfYmQyaRoHYncSGrpoYceUqk8PTImKanbbrsNq1evxnPPPefxeJL2e+qppyhgiB+47+ZqHToTvge/R/xglID5SBNvzn/rhAS0gJGOIKm3+Oqrr2C1WhEXF6cKct2pq6tTEQA5J+mMrseFwZ4bbuRDvD9pHG9Binile2vp0qVKyMjrEhER4YrSSPRLR34/8ruRol9h7NixKpolgk9+h9dee606LrVNvQlEmW4tRduE+IV5nXToBEfC78laBFhCgboioHQvkDLD6BURMqwM+Ou/fJuXmgj58NNTQ9I+LR1G7reRwloRIV3PSYFoenp6j/fr77lAR6IoOtdccw3uvvtuj/PuBbt6hMUdEThdO48E/djChQs9jPLk99C1q4kQnxUwk/y4+8gdawgw3hlZZjcSCXQB09TUpAp5pSPohz/8oYoEyLZ48WJVd/LSSy+p20kX0rnnnqs+KKWFevPmzfj4449VQaikKJYvX65uJ50zYsYmxanyOJKm0M+Jz8kzzzyjvvmL94mkO/RzgY4U7IqgkK6wdevWKREjKSERebIvXV99CRipX+rpuM706dPxq1/9Cl9//bXqdJJaJ+k4I8Qv3HcDof5FxzVW4COjV0LI8OMYAG+//bb0/Hbbjh496njnnXccYWFhjvj4eEdiYqJj7969rvs9++yzDqvV6oiNjXWMGzfOUVJS4jr329/+1mGz2RxRUVGOuXPnOhobG9Vxu93u+OlPf+oIDQ1V20UXXaSO9Yeamhq1LrnsSlNTk2Pfvn3q0hfp6OhwHD582PHEE084kpKSHGvWrHE0NDQ4rrzySkd4eLjj7LPPdrz//vuu12rq1KkOs9ns2uR1OXbsmOOGG25wmEwm13HZv+eee9R9qqqqHP/xH/+hXvesrCzHM8880+eafP01JQHAzv/ncNwf5XA8vdARUFTmaT/3f8U6HI2VRq+GkCF9fndlQALmZBQXFzv+9a9/OcrLy7udy83Ndaxbt85RV1fX7ZyInfXr1ztaWlq6nfvmm28cn376ab/Fiz8LmKuuusphsViUUPzP//xPx9dff+1xvrKy0nH//fc7IiIiHHfddZc6NnHiRMf+/ftdt5k5c6b6Xfzyl79UwlLn5Zdfdjz55JODWpcvv6YkQPifX2gf5B8/4Ag4/nya9rPv/ofRKyFkWAVMkPwPfoaks8Q3RczfpGDVnebmZlWjIy3aPVnoezNSlyKt5DLCoa+uK/GDkRSR+LiMBr78mpIAcd9dPUEzsLvqIyDzNAQU6+8BvvwTMPsy4IfPGr0aQgb9+d0VDnP0IcT75fTTTz9py7h0DY2WeCHE61FutAHgvnsyV97DH4ntttGrIWTYoIAhhARI99Fy/3bf7Y3MBYAtEmgoA4q/M3o1hAwbFDCEEP9FMuQH/Xz69MmwiHHfUm2f3UjEj6CAIYT4t/tu1dHAcd/tDU6nJn4IBQwhxH/RZx+NXQwEa27VAclEpx/M8e1AQ7nRqyFkWKCA8VHcnXKlWruv2UiEINCnT08OEPfd3ohKBVJmatZdhz8xejWEDAsUMD7IgQMHMHXqVOVirDsf33jjjWpfJlI/+OCDyvXYHelKkpY0mZXkvknbswxrJMQv3XcLv+os4A10mEYifgYFjI8hYxUuvPBCNWph1apVrsndMh5gzZo1mDRpkhopIH4x7oh42bVrF6qrqz02mTDdm3eL3W7HGWecoUYJEOJzqCnMdiBpOhAzxujVeFE79ceAvXOeGiEBNY2aGENubi4uuOACNTdKpkvLdZkMvn79ejUXSfxfNm7ciOzs7G73FZHTGz0NdhSee+45lZ666aabhvXnIGRU618CafZRX6TPA0JigOZq4Ng2YMzpRq+IkCFBAaPNg0J7S4shz20JDu5zsKKOCIklS5bg0UcfxVtvvaXWLIMWJYoiDrgyGVwmhOuRk7POOguvvvqqa4q0+4TqrsjtuyIRnN/+9rfquaxW65B+RkJGnfbWzlqPQJk+fTLMFmDiOcCef2hpJAoY4uNQwMh7XUsLnvr5SkOe+6ZX3oS1H/b7Yq0sU7ulbuWNN95AR0cHHnjgAXXur3/9q5pQLSMEZAJ4WVmZ2lJTUz0iMPPmzevxsW+//fZux37zm98o8SPFwl9++aVKJRHiMxRsAVpqgfDEwHTf7SuNpAuYc+41ejWEDAkKGB9CxIuwYsUKNVZA58orr8SyZctUAa8gEZ2MjAzYbDbXbQ4ePNjv59myZYsSSZKuOnLkCB566CEsX74cf/7zn4f15yFkxN13s8V9l6V+LiacI+8QQMkuoLZY604iZDAGkZvWANN/BMSNg1FQwDjTOBIJMeq5B8pjjz3WZ9v02rVrMXnyZLUv9TAyaFFHIjf5+flKlLz44ouu9JWkpG677TasXr0azz//vJq59K9//Uud/+Uvf6miMdLppD8uIT7hvsv6F08iJCJ1quYHI8W8p/5/Rq+I+CJHPwc++R3wxRrgtoOGeSzxq4kzYiFpHCO2/tS/dEWKeN98802Ul5cjJycHeXl5al82qXWRNJKO1K/s2bNHHZdNhIh0JMlASKmZ0Y///ve/d3UjHTt2TEVf9LVJtEfasCUaQ4jXU57T6b47/myjV+N9sJ2aDBWJvgizLzXUIJICxgeRKIrONddcg7vvvtvjvHvBbk8CSQROT51H+jFJPzU1NXkIJon4pKenD9vPQMiIoUdfAt19tzeyna68Rz4FOjz9ogg5Kce/BXI3AkFm4AzNf8woKGB8ECnYlUiKtE6vW7dOiRhJCYn/i+ynpaX1KWDEM6avyM+ll16q0kiffPKJSjf9+te/Vm3bs2bNGrGfiZBhr38JdPfd3kg9RStubq3Tip0JGQibHtcuZ/4nEKt1uRoFBYyPIS3PP/nJT/Duu+9i6dKlKvUjbdRS57J48WJs27YNBQUFqqZFv/2MGTNUF5JsIkiam5tVFOf66693HZcojh7ZkYJgqbO57rrrlHA5dOiQSlkNJt1FyOi7736t7dN9t2ck0qrPRmIaiQyEshxg/3va/qLfwGgoYHyIq6++WtWuSCRk8+bNeO+993DLLbcgLCxMFeRKy7P4v4jA0dNKMlLAvQZm5syZKgLT0tLiUQMjrdhS56Jz1VVXqfoaSSVJVxKLd4lPIB/I4r6bPIPuu/1JI4lbMSH9ZfOT2jytyRcASVNhNEEO/au6H1FbW6t8U8T8TQpW3ZHog0QrJGrRm4W+tyICRQzm5syZo4RMb4gfjERL3AXJSOLLrynxM974BbD3n8Di2+lz0hdNVcDqCYCjA7h5l+GpAOID1BwDnpwN2NuBqz4GMueP+ud3VxiB8SGkG0jam/sSL4KMFBgt8UKIV7rvsv6lb0JjgUynE+9hRmFIP9jytCZepDh+hMTLQKGAIYT4BwVfdrrvpp1q9Gq8H6aRSH9pqAC2v6ztL7oF3kLAChg/zJwZBl9L4hUcpPvuoPxgcj8D2pqNXg3xZr75v0BbI5A6G5jwPXgLAfevXB9M2NjYaPRS/Ab9teTQR2IYIqI5fXpgJE8HItOA9iYgf5PRqyHeSksd8PX/1fYX3SreHPAWAm6UgJi4yUwhKXQVpIOH7cGDj7yIeJHXUl5TdwdgQkaVsoNAVR7ddweCvO9JGunbV7Q00sRzjV4R8Ua2vww0VwPxE4GpK+BNBJyAEVJSUtSlLmLI0BDxor+mhBiCHn0ZdxbddweaRlICZj1w/mNGr4Z4G+0tWvGucObNgMm7vqQGpICRiEtqaqrq1hGfFDJ4JG3EyAvxmvqXSUwfDYjxSwCTFajMBSqOAPETjF4R8SZ2vg7UFWupxlmr4G0EpIDRkQ9efvgS4gcdEse+0fYpYAZGcCSQdQZw9DMtChN/ndErIt6CvcNpXAfgjBsAiw3eRsAV8RJC/AzxMVHuuzOBmEyjV+N7cDo16Yl97wCVRzTPoFN/Dm+EAoYQ4h/Tp9l9NDQBk7cJaG0wejXEW7r6Nq3R9k/7ldfWlVHAEEL8w32X6aPBkZANxGQBHa3A0c+NXg3xBg5/ApTsBqzhwOm/grdCAUMI8V3yNwOtdUB4Et13h9ROzTQScWPT49rl3F8AYXHwVihgCCG+S47effR9uu8OBZeAkXoiOmsHNIXfaMaG0p228Hp4M/wXTwjxTeSDVq9/mcThjUNi7CLAEgLUFAJlB4xeDTGSL5y1L7NXAdHp8GYoYAghvol80FbnA+ZgYALdd4eELUybMiwwjRS4lO5zmkIGacZ1Xg4FDCHEt9NH4r5rCzd6Nf6VRiKBXfsy7WKtuNvLoYAhhPi2+y7bp4cHmYskFGwBmmuMXg0ZbarygD3/6Bza6ANQwBBCfA+67w4/ceOA+GzA3g7kbjR6NWS0+fJPgKMDmPA9IG0OfAEKGEKI7yF1Grr7bnSG0avxH9hOHZjUnwB2/N2noi8CBQwhxHenTzN9NDJpJLZTBxZfPQO0NwPp87SONB+BAoYQ4oPuuxu0fbZPDy8y2FHcV+tLgZJdRq+GjAbNNcDWF7X9xbdqxoY+AgUMIcS3EJMtcd+NSAbSTjF6Nf6FJRgYv1TbZxopMNj6ItBSCyRO8bkvBBQwhBDfIufDznoNuu+ObBqJ+DdtTVr6SFh0i8/9e/Kt1RJCAht3993JvvVt0ecEzLGtQGOl0ashI8mOvwMNZUD0GGDGJfA1KGAIIb7pvqunOsjwIl1dSdO1Lq8jzloj4n90tANfPqXtn3EjYLbC16CAIYT4Dnr0he67o5RGYh2M37LnH0B1ARCWAJzyU/giFDCEEN8bH8D26dHxgzn8MWDvMHo1ZLix2zvHBiy4TpuF5YNQwBBCfIOGcqCQ7rujQuZpQHA00FgBFO0wejVkuDn0IVC2H7BFAvOvhq8yYAFTXl6OcePGIS8vz3XspptuQlBQkGubOHGi69yePXswf/58xMbG4o477oDDzRzps88+w9SpU5GQkIA1a5wjvJ28+eabyMrKQlpaGtauXTv4n5AQ4h+odIYDSKH77ogj9RD6hG+mkfwLhwP4wvl5O/8qIDQGASFgRLxcdNFFHuJF2LZtG95//31UVVWpbccOTbG3tLRgxYoVmDt3rrrNvn378PLLL6tzZWVluPjii3HppZdiy5YtePXVV/Hpp5+6RM/ll1+Oe++9Fx9++CHuu+8+HDx4cPh+akKI79a/+JhXhc/CsQL+Sf5mbY6YFMIv+DV8mQEJmFWrVuGyyy7zONbe3o69e/firLPOQkxMjNoiIyPVuQ8++AA1NTUqujJhwgQ8/PDDePFFzfFPBItEV0SkZGdnK5Gin3vhhRdw9tln4+qrr8bMmTNxww034G9/+9vw/dSEEN9z39U7Ylj/MjpMPFe7lBSSzMoh/sEXzujLKZcDkckIGAHz/PPPq3SRO7t374bdbsecOXMQGhqK8847DwUFBerczp07sWDBAoSFaQVCs2bNUlEY/ZyIFEk5Caeddhq2b9/uOve9733P9Rzu53pCIj21tbUeGyHE39x36zX33VS6744K8uGWOqezmJf4PsU7gSOfAEEm4AzPz3K/FzBS+9IVESSTJ09WEZJdu3bBYrHgmmuuUedESLjfR8SK2WxWaaau56KiolBUVNTj/dzP9cQjjzyC6Oho15aZmTmQH4sQ4u0cdHYfTVruc26hPg3TSP7FJmfnkZjWxXX/PPc1hvxOILUqUt+ycOFClQp65pln8NFHHykRImImODjY4/YhISFobGzsdk4/LvR1rifuuusularSt8LCwqH+WIQQbyo61KdPs/vIoHbqDZrxGfFdKo4A+97pHBvgBwz7V5mkpCSVUiouLkZcXJwq1nWnrq4ONput2zn9uNDXuZ4QsSNRGveNEOInnNivGW7RfXf0ST8VCI0DWmq0wk/iu2x+QnNXzl4OJE+HPzBkASOt0a+99prrunQUmUwmlcaR9mm5rnP06FFVryICpes56VxKT09X+32dI4QEGHr0ZfwSuu+ONiZzZzEv00i+S20R8J3TjmTxrfAXhixgZs+ejXvuuQeffPIJ1q9fj2uvvRY/+9nPVOGudCZJKumll15St5UupHPPPVfVwUgL9ebNm/Hxxx+jra0Nq1evxvLly9XtLrnkErz++uuqQLi+vh5PPfWU6xwhJFDrX5g+MrYOhtOpfZYtTwP2NmDMGcCYBfAXLEN9gJ/+9KeqjVpEhwgTuS5CRT24xaJaosXrRSI1EpnZuHGjOifmdY8//jguuOACREREqPZr3SNGRNHNN9+MefPmqfoXqa359a99u1+dEDII6su0qcgCBYwxTDxH61op3QPUHAeiGQ33KRorgW0v+V30RQhyuFvjjhAlJSWqDVpaquPj4z3OSVrpwIEDWLx4sRIyXTucjh8/jiVLlvRZA9MVifpIN5IU9LIehhAf5rvXgLevA1JmAdd+YfRqApcXvw8Ufg2seBKY+wujV0MGwsbHgI0PA8kztX9DTusSb2Ugn99DjsD0h5SUFFx44YU9npN26Z7as4Vp06apjRAS4O67k+m+a/h0ahEwOespYHyJ1gbg6+e0/UW/8XrxMlBoqEAI8U7aWzrdd5k+8o46mNyN2u+F+AbbXwGaKoHYccC0/4C/QQFDCPFO8tzdd52OsMQYJIUXkQK0NQD5Xxq9GtLf8Rtb/qztn3kzYB6VhMuoQgFDCPFOcui+6zVI6iFbb6dmN5JPsPt/gNrjmvCc4znD0F/guwIhxPuQ3gJX+zTrX7wCjhXwHewdwKYntP2F1wMWT0d8f4EChhDifZzYB9QUAJYQuu96C/J7MFmAikNAZa7RqyF9ceBf2u8pJBqYdwX8FQoYQoj3dh+NE/ddbZo9MRj5MByzUNs/xOnUXh29/GKNtn/aNUBwJPwVChhCiPeR86F2OZndR17XTi0wjeS95G4Eir8DLKHA6dfCn6GAIYR4F3Tf9f46mLwvgNZGo1dDemKTM/oy9+dAeAL8GQoYQoh3ob7dO7TW3ag0o1dD3EmcAkRnAu3NWps78S6ObQeOfq7VKi28Af4OBQwhxDunT9N910vbqZlG8vroy8wfAzGZ8HcoYAghXua++6m2z/SRl7dTf6gVjBLv4MQBrfsIQdrYgACAAoYQ4j2o2gpx302h+663Mu4swGwDqguA8kNGr4bobH5Su5xyIZA4GYEABQwhxHtwmdfRfddrsYUDYxdp+0wjeQfVhZrzrrD4VgQKfIcghHgHko7Qxwew/sW7oSuvd/HlnwB7u+ablD4XgQIFDCHEi9x3CzX3XXkjJt4vYGSwY0ud0asJbBrKgW//W9tfdAsCCQoYQoh3ue+KZT3dd72b+AlA3HjA3gbkfmb0agKbr54F2puAtFMCbuwGBQwhxPumTxPvh2kk42muBbY+r+0vulVrcw8gKGAIIV7ivrtN22f7tG/g8oP5iO3URrH9JaC5BkiYBEy5CIEGBQwhxHjEU0Tcd1Nn033XV8hapM3bqSsCSvcavZrAo60Z2PK0tn/mbwKyay/wfmJCiPfWv0xi95HPYA0BxjuLrZlGGn12vgbUlwJR6cDM/0QgQgFDCDH+m6Tuvsvp076bRiKjR0d7p3HdGTcCFhsCEQoYQoixyFDAtgYgMpXuu77GRKeAKfwaaKoyejWBw763gao8IDQOOPVnCFQoYAgh3tN9FGBdFD5PbJY2odrR0RlFIyOLFExvekLbX3Cd5owcoFDAEEK8w32X9S++CdNIo4u8zqW7AVsEcNovEchQwBBCjEO6V1zuu2cZvRoyFD+Ywx8BdrvRq/F/Nq3RLuf+AgiNRSBDAUMIMY4cuu/6PJkLAFsk0FAGFH9n9Gr8m/wtQMEWbRr4whsQ6FDAEEK8YPo0u498FumAmeC0sGcaaWTZ9Lh2OftSICoVgQ4FDCHEGOpPAMe3a/sUML4NxwqMPCV7NMPHIBNw5s1Gr8YroIAhhBhDju6+O4ffJv2lnVoEqUxHJiMXfZn2H9owTUIBQwgxCL37aDK7j3weEaApMzVBevgTo1fjf1TmAnvf0vYX/cbo1XgNFDCEEGPdd5k+8g+YRho5Nj8FOOzAxHO1eWFEQQFDCDHYfZdvyP7VTv0xYO8wejX+Q10J8N2r2v6iW41ejVdBAUMIMa59mu67/kP6PCAkBmiuBo5tM3o1/sNXzwAdrUDm6UDWGUavxquggCGEjL77rqt9mvUvfoPZAkw8R9tnGml4aKoGtv61M/pCse8BBQwhZHQp3QPUHgMsocD4JUavhgwnrIMZXrY+D7TWAUnTOl9b4oIChhAyuujRF3HftYYavRoynEyQCEwQULILqC02ejW+TWsj8NWz2v6iWwATP667wleEEGJM/ctkdh/5HRGJQPqpncW8ZPDs+DvQWAHEZAHTf2T0arwSChhCyOhB913/h2mkodPRBnz5lLZ/5k1afRHpBgUMIWSU3XcBpJ0CRKYYvRoyEmQ7XXnF50c+iMnA2f2mNqU9PAmY81OjV+O1UMAQQkbffZfRF/8l9RQgPFErPi34yujV+B52e+fYgAXXAdYQo1fktVDAEEJG0X13g7ZPAeO/SLGpPhuJaaSBc3AdUH4QCI4C5l9l9Gq8GgoYQsjokPcF0NYIRKbRfTdQ0kiHPjJ6Jb7nkbRpjbY//2ogJNroFXk1FDCEkNHhIN13A4YJZwNBZqBsP1BdYPRqfEvkS5G7JQRY8GujV+P1UMAQQkbnm6VewMvp0/5PaKxmfS8wjdR/vnBGX075/7SWdNInFDCEkJGnZHen++64s4xeDRkNmEYaGEU7gNxPtcjVGTcavRqfgAKGEDLy6NEXSS3QfTew/GByP9MKuEn/oi8zVwKxWUavxieggCGEjOL0aXYfBQzJ07WC7fYmIH+T0avxbsoPAfvf6xwbQEZGwJSXl2PcuHHIy8tzHduzZw/mz5+P2NhY3HHHHXBIvtvJZ599hqlTpyIhIQFr1jgVppM333wTWVlZSEtLw9q1az3OPf3000hOTsb48eOxYYOz9ZIQ4nvUlbq57y43ejVktJBCbaaR+sfmJ6RQDJh8AZA01ejV+KeAEfFy0UUXeYiXlpYWrFixAnPnzsW2bduwb98+vPzyy+pcWVkZLr74Ylx66aXYsmULXn31VXz66acu0XP55Zfj3nvvxYcffoj77rsPBw8eVOfk+u23346//OUv+Pvf/46rr74aFRUVw/uTE0JGh0N03w1YOFbg5NQcB3b+P21/0a1Gr8Z/BcyqVatw2WWXeRz74IMPUFNTo6IrEyZMwMMPP4wXX3xRnRPBItEVESnZ2dlKpOjnXnjhBZx99tlKnMycORM33HAD/va3v6lzzz77LH7+85/jBz/4Ac444wx1+c9//nP4fmpCyOhPn57E7qOAY/wSwGQFKnOBiiNGr8Y72fJnwN4GZC0CMucbvRr/FTDPP/88brrpJo9jO3fuxIIFCxAWFqauz5o1S0Vh9HMiUoKcng+nnXYatm/f7jr3ve99z/U4/T3XExIFqq2t9dgIIV6AFG9KZ4XA6dOBR3AkkHWGts8oTHcaKoDtWsYCi1n7MqICRmpfuiJiwf24iBWz2Yyqqqpu56KiolBUVNTj/fp7riceeeQRREdHu7bMzMyB/FiEkJHi6Oea+25UOpAyy+jVECNgGql3vvmL9u9D/m1MOMfo1QReF5LFYkFwcLDHsZCQEDQ2NnY7px/v6X79PdcTd911l0pj6VthYeFQfyxCyLB2H9F9F4EuYPI2Aa0NRq/Ge2ipB75+TttffCv/fRghYOLi4lSxrjt1dXWw2WzdzunHe7pff8/1hIgdidK4b4QQL3LfZf1L4JKQDcRkAR2tWkSOaEjqqLkaiJsATL3Y6NUEpoCR9mnpMNI5evSoqkkREdL13I4dO5Cent7j/fp7jhDiS+67x53uu4uNXg0xtJ2aaSQP2lu04l3hzJsBk9noFQWmgDnrrLNUzcpLL72krksX0rnnnqvqYKSFevPmzfj444/R1taG1atXY/lyzQfikksuweuvv47du3ejvr4eTz31lOvcypUr8cwzz+D48eMoLS1VnUv6OUKIj5Dj7D6i+y5xCZiPtMhcoLPzdaCuGIhMBWavMno1PotlyA9gsaiWaPF6ERM7k8mEjRs3qnNiXvf444/jggsuQEREBGJiYlweMbNnz8bNN9+MefPmqRoXabP+9a+16ZviK/PGG2+oY8I555yDH/3oR0NdKiHEkOnT7D4KeMYu0iYs1xQCZQcC26zN3gFsflLbX3gDYPGsISX9J8jhbps7BEpKSlSrs7RUx8fHe5yTtNKBAwewePFiJWTckZZribQsWbKkW53L1q1b0dDQoM7prdj9QSJC0o0kBb2shyHEAOpKgD9O1vZvO0gDOwL8fSVw+CNg2e+0tEmgsvefwBu/0CZ2/2YPEOz5mRjo1A7g83vIERidlJQUXHjhhT2ek5bonlqwhWnTpqmtJ6QWhhDig+jFu2mnUryQzjSSCBhJIwWqgJF4gT608bRfUbwMEQ5zJISMXP3LZHYfESf6XKSCLUBzDQKSI58AJbsAaxhw+q+MXo3PQwFDCBle2pqAI073Xda/EJ24cUB8NmBvB3K1OsmA44vHtcu5vwDC4oxejc9DAUMIGV6OfgG0Nzndd2cavRriTQRyO3XhN0D+Jm02lBTvkiFDAUMIGV7ovktOlkYKxHbqTc7oy+yfANH0NRsOKGAIIcMH3XdJX8hgR2s4UF+q1YIECqX7gIPrpPEXOPM3Rq/Gb6CAIYQMH/KhJO67UqQ47iyjV0O8DfE8Gb808NJIm5/QLqeu0EYrkGGBAoYQMnwcdHYfjRf33RCjV0O8PY0UCFTlAbvf7BzaSIYNChhCyPDXv0xm9xE5iYA5thVorITf8+WfAUeHJurTTjF6NX4FBQwhZHioLQaKdmj72ZxdRnohOgNImg447MCRDfBr6k8AO/6m7TP6MuxQwBBChodDzuLd9LlAZLLRqyE+kUby8zqYr54F2puB9HnAWE5kH24oYAghwwO7j8hA/WAOf6wNN/RHxG146wva/qJbaCkwAlDAEEKG2X2X6SNyEjJPA4KjgcaKzrSjv7H1RaClFkicAky+wOjV+CUUMISQoXP0c6f7bgbdd8nJMVuBCWf7bxpJBL2kjwTxfTHxo3Yk4KtKCBk6B+m+SwaIP48V+O5VoOEEED0GmLnS6NX4LRQwhJDhc9/l9GnSXyaeq11KCkm6dfyFjnZg81Pa/hk3atEmMiJQwBBChkbxTqCuSLOIZ6cF6S/SqZY6p7OY11/Y+xZQnQ+EJQCn/NTo1fg1FDCEkKGR43TflZoGuu+SQE4j2e2dQxsXXAvYwoxekV9DAUMIGab6F7rvksG2U2/QUi++jgixE/sAWyQw/5dGr8bvoYAhhAzNfbf4O88PI0L6S/qpQGgc0FIDHPsGPl8LtmmNtj//SiA0xugV+T0UMISQwUP3XTIUTObOYl5fTyPlfwkUfg2Yg4EFvzZ6NQEBBQwhZOjTp+m+S4ZcB+Pj06n16Mucy4DIFKNXExBQwBBCBm/WlbtR2+f0aTJYJp4DIAgo3QPUHIfPduJJJ1WQCTjzJqNXEzBQwBBCBkfuZ53uu8kzjF4N8VXC4oCM+dr+YR+Nwmx6Qruc/iMgbrzRqwkYKGAIIYMj54PO6Avdd0mgppEqjgD73u4c2khGDQoYQsjQ3HdZ/0KGyiSngJGUZHsLfIrNTwIOO5C9HEhhJHI0oYAhhAzSfbfY6b67yOjVEF8nZRYQkQK01gMFW+BTNgI712r7jL6MOhQwhJCBQ/ddMpxICjL7XN9LI235M9DRCoxZCGQtNHo1AQcFDCFk4NB9lwT6WIHGSmDbS9r+oluNXk1AQgFDCBmk+24QMGm50ash/sL4pYDJApTnAJVH4fVsfQFoawCSZwLZy4xeTUBCAUMIGVz6SNx3I5KMXg3xF0KitVSML6SRWhuAr57V9hf9hl14BkEBQwgZnICheR0ZbvRIhrenkb79b6CpEogdC0z7D6NXE7BQwBBC+k9rY6f7LtunyUjVweR9of2teSPtrcCXf9L2z7wZMFuMXlHAQgFDCOk/R8V9txmIzgSSpxu9GuJvJE7R/rbkbyxvE7yS3f8D1B4HIpKB2ZcZvZqAhgKGEDLw9JF0HzHvT0akndqL00h2e+fYgIXX00LAYChgCCGDcN9l/QsZ6XbqD7W/OW/iwL+AikNawfHcK4xeTcBDAUMI6R/SOk33XTLSjDsLMNuA6gKg/BC8BhFTm9Zo+/N/CYREGb2igIcChhDSPw7SfZeMAjY3gexNaSQpXi/aAVhCgQXXGb0aQgFDCBn49Gl2H5EAdOXVoy+n/gwITzB6NYQChhDSL2qLtAGO4r4rU3cJGQ0Bk/8l0FJn9GqAY9uBo59rTsFn3Gj0aogTChhCSP+7jzLmARGJRq+G+DvxE4C48YC9Dcj9zHuiLzN/DMRkGr0a4oQChhDS//oXdh+RQEsjlR3Uuo904zriNVDAEEL6RhxRxcBOoIAho4XLD+YjY9updd+XKRcBSVOMWwfpBgUMIaRv6L5LjCBrkdbxU1cElO41Zg3VhZrzrrDoVmPWQHqFAoYQ0jcHnd1HdN8lo4m06o9fYmwaacufAXu75k2TMdeYNZBeoYAhhPRtna6773L6NDEyjTTaNJQD21/R9hl98UooYAghfbvv1pcAtghg7GKjV0MCjYlOAVP4NdBUNbrP/fVzQHsTkDoHGL90dJ+b9AsKGELIydunxX3XEmz0akigEZulTah2dABHPh29522uBb75i7a/+FamTv1dwNx0000ICgpybRMnTlTH9+zZg/nz5yM2NhZ33HEHHG7V5J999hmmTp2KhIQErFnj7LN38uabbyIrKwtpaWlYu3btcC2TEDKo+he675IASiNtfwlorgHis4EpK0bveYkxAmbbtm14//33UVVVpbYdO3agpaUFK1aswNy5c9X5ffv24eWXX1a3Lysrw8UXX4xLL70UW7ZswauvvopPP/3UJXouv/xy3Hvvvfjwww9x33334eDBg8O1VEJIf6g5DpTscrrvOj05CBlt9L+9wx9pNVkjTVszsOVpbX/RbwATExXeyrD8Ztrb27F3716cddZZiImJUVtkZCQ++OAD1NTUqOjKhAkT8PDDD+PFF19U9xHBItEVESnZ2dlKpOjnXnjhBZx99tm4+uqrMXPmTNxwww3429/+NhxLJYT0l0PO4l267xIjyVwA2CKBhjKtJmuk2bkWqC8FotI1513i3wJm9+7dsNvtmDNnDkJDQ3HeeeehoKAAO3fuxIIFCxAWFqZuN2vWLBWFEeSciBRJNwmnnXYatm/f7jr3ve99z/X47ud6QiI9tbW1HhshZIjQfZd4AxYbMGHp6KSROtqBzU9q+zLzSJ6b+LeAEVEyefJkFSXZtWsXLBYLrrnmGiUkxo0b57qdiBWz2axSTF3PRUVFoaioSO33da4nHnnkEURHR7u2zEzOqiBk2Nx3OX2aBMpYgX1vA1VHgdA4beo08X8BI/UqUuOycOFClQ565pln8NFHH6moTHCwZ+dCSEgIGhsblchxP6cfF/o61xN33XWXSlXpW2Fh4XD8WIQELrkbne67Y4CkaUavhgQ6ejv18e2aP8tIIA0m+tiA068FbOEj8zxk2BiR6qSkpCQlXlJSUlSxrjt1dXWw2WyIi4vzOKcfF/o61xMidiRK474RQoZAzged5nVsISVGE5UKpMwUlQEc/mRknuPwx0Dpbs3z6LRfjsxzEO8TMNIe/dprr7muS1eRyWRSBbiyr3P06FFVryICRVqr3c9J11J6erra7+scIWQU3XdZ/0ICJY30hdPKY+4vgLC4kXkO4n0CZvbs2bjnnnvwySefYP369bj22mvxs5/9DN///vdVPctLL72kbiddSOeee66qg5EW6s2bN+Pjjz9GW1sbVq9ejeXLl6vbXXLJJXj99ddVcXB9fT2eeuop1zlCyAhTvEPrwlDuu4uMXg0hXdqpPwbsHcP72AVfAQVfAmYbsPCG4X1sMmJYhuNBfvrTn6o2ahEeIk7kuogVqWWRlmjxepEojURlNm7cqO4j5nWPP/44LrjgAkRERKjWa90jRgTRzTffjHnz5qn6F6mr+fWvfz0cSyWE9Lf7aML36L5LvIf0eUBIDNBcDRzbBow5ffijL7NXaekq4hMEOdytcUeIkpIS1QYtLdXx8fEe5yStdODAASxevFgJma7dTcePH8eSJUv6rIHpikR9pBtJCnpZD0PIAHlusWZg94NngFMuN3o1hHTy5pXAnn8Ai28Hzrl3eB6zZA/w3JlAkAm4YRsQP2F4HpcMioF8fo+KxaAU81544YXdxIsg7dLnn39+N/EiTJs2DcuWLRuQeCGEDAG675JAq4PZ7Ow8mvYDihcfgx7JhJDuwxsz5tN9l3gfE87RxLWI7NrioT9e5VEtoiMsumXoj0dGFQoYQkh3ASPt04R4GyKq00/tLOYdKl8+BTjswMRzgdTZQ388MqpQwBBCNFobgFyn+y6nTxN/TyPVlQI7XtX2GX3xSShgCCGd7rsdLUCMuO9ONXo1hPRMttOV98inQEfb4B/nq6e1v/eM04CsM4dteWT0oIAhhGgc/KAz+kL3XeKtpJ4ChCUArXWaf8tgaKoGtv5V2198K//efRQKGEJIF/ddmkYSL8Zk6ozCDDaNtPUFTQDJnK9s/r37KhQwhBDNfbfhBN13iW/gEjAfDW7S+lfPdta+iCAiPgl/c4QQuu8S30L+ToPMQNl+oLpgYPfd8XegsVyr9Zr+o5FaIRkFKGAIIW7Tp9l9RHyA0Fgg8/SBR2Gk6Fdap4UzbgLMwzJNhxgEBQwhgU7NMaBkN913if+nkcS0rqYQCE8ETvnpiC2NjA4UMIQEOrp5XeZpQHiC0ashpH/oYvvoZ0Bbc/8K1Tc9ru0v+DVgDR3Z9ZERhwKGkEBHr3+ZRPdd4kMkTwci04C2RiB/c//SpGUHgOAoYP5Vo7FCMsIwAUi8d6hgVR5gsmib5KpN7pu5y/UeztPboX/uu0c/1/ZZ/0J8Cfn3LWmkb1/R2qknypykXnA4gC/WaPsiXkKiR22ZZOSggCHeQ30ZsO9tYPebQOEgDarckS6FoQgg9+sDvr/bbczWXu6jX+/tvPOY6/69PYZ18MLN3X03ccrQX3NCRjuNpAuY8x/r/XZ5XwDHtwGWEC19RPwCChhiLM01wP5/AXve1ObwODqcJ4KAuHHaNyd7B2Bvd9vkelvndRnG1hPyWB2ytQBDcBz3OYL6El9dzjVWaPeh+y7xRcYv0QR8ZS5QcQSIn9Dz7fTaFyncjUga1SWSkYMChow+bU2a66uIlpz1msDQSTsFmLESmPEjICqtf48nxXkiVnRBI62SPYoefb+n887bqPv2dJ8ehFPX8x09PF635+jl/GDW3B/h1l/k9SbE1wiOBLLO0Ap5JQoTf1332xTtAI5s0IS9tE4Tv4EChowO8gEt6QpJDx14X7Px1kmYDMwU0XJJ79+g+kI5aZq0VEsgoQu3oYou6TxKm2P0T0PI4NNIuoBZcF3v0Rd5j4nNGvXlkZGDAoaM7AdswRYt0rL3baCpsvNc9BjtW7+8qSTPYPpiMASqcCOkq4BZfzeQt0krSreFd54rPwTse1fbP/M3hi2RjAwUMGR4kZqV4u+0SMvefwK1xzvPiXnU9B9qKSLxHKFoIYQMlYRsICYLqM7XOurcu+k2PyFvSlqNV/I0I1dJRgAKGDI8lOVokRYRLpVHOo8HRwNTVwAzLwHGnkXrbhKQtBUVoaOuDsGTJiGIwn0E2qm/D2x9Xksj6QJGrBh2/j9tf/Gthi6RjAz8NCGDp7pQs+YW4aKs6J1YQoHJ52mRFvFp4HBAEuBUrV2LiudfgG3sWESetxxR559PMTOcuATMR1oUWF7XLU9r9V9Zi7SILxkWHA4Hygvzkb/zW5itVpxy3goYBQUMGR6vFmnJnXCOVtMi34CkO2AI/0Bqy5tUk010Uijf5InPY29sQpDNhta8PFQ893/V5hIz552H4MmT+Xc+FMYu0jxeZM6RuO1GJAPbX9bOLb7F6NX5PI21Ncjf/R3yd+5A/q5vUV+l1TNGJyVjzvKLDPvbpYAhQ/NqkTcO6R6a9gMgLG5wD9/QhhN5tSjNq0VJbq3al2NCRGwwMqfFYcy0eGRMiUVIOAtWiW/Q0d6OkiOHULD7OxR01KNi/jTERUYjrqYBUXsPICovD626mMnKQuT551HMDBZbGDB2MXD4Iy2N1NoItDUAKbO0L1ZkQHS0t6E45yDydn2LvJ3fovToES2y5cRik/flGciadSocdjuCzGYYQZBDvu76GbW1tYiOjkZNTQ2ioqKMXo4Pe7X8W4u0SFjWw6vlVC3SIgW5/fVqcdLRYUfl8QaU5NYowVJ6tBbVpY3dbmeyBEH+62jv9DqR9/SksVEYMy0OmdPikTw2EiYzx3kR70DeSisK81GwZ6f6tnps/x60NjX1enub1YaEIDNiCooQX1OPiOZW+UqgiZnzzkPU+RQzA+LrvwAf3AGkz9WM7ZqqgJUv0eOon1SVFKkIi4iWgj270Nbs+bebOGYssmafirGzTkX6lGmw2Gzqb364/z4H8vlNAUM6ET+RI59qkRbl1VLfeU5s5nWDuX56tcifVn1VixIppUdr1OWJgjp0tHU3YItKDEXy2CikjI9C8thoJGREwO5woOhQNQr3VqJgXwWqSjyFTnCYBRmTY7UIzfR4RMaFDP01IGQA1JafQMHunUq0yNZQXeVxPiQyCmOmz0LWzDlIGDNWRWQK9+5E4b7daGlo8LhtcJAJ8dV1iKttQHx9E8Ja2xGsi5nzliN4yhSKmb6oPAo85eZnFDcBuGGr5j5NutHS2IiCvTtVLUverh2oKS3xOB8aFa3+bsfOPhVZs05BRGycek/PqcrBlqIt+LLoS8SHxuORxY9gOKGAGSEB02HvUL+0jMgMpEWkIdjsB8WpyqvlSy3Ssu8dT68WmY8j6SERLjL59SRvnq3N7TiRX+cSKxJhaaxp7XY7W6gFyeNEqES5LkMjbSddal1lMwr3iZipxLEDlWhpbPc4H5sShsypEp2JQ/qkWFiD+cZ1Mto62lDbWotQSyhCLCEwBTGi1RfN9fUo3LtLRVgK9nyHquIij/MSWs+YOh1jZszGmJlzkJQ1DkHKr8cTu70DJ47mKtEjj3fswF60t3g6J4e2tiO+vhHxdU1K0ESmpyPqvPMpZvriT/OAikPa/oqngLk/N3pFXoNd/uZyj6iUkERZinIOqPSPjslsQfrkqUqsiGhJGjte/e2WNZZhS7EmWL4q+goVzc7xIwAibZH44idfwDyMIpECZoQETHF9Mb7/j++7rieFJikxkx6R3u0yKSzJez8M5Fcu9tqqg+gtoM7tTTg8SUsNSYooY36vosVud6CquEFLAznTQZVFDe5pUkWQKQjx6eFIGRetiZVxUYhJClPHh4I8v9TKiJgp3FehBJP7c0sKKm1ijLN+Jg7x6REB+YZvd9hxovEEjtcf17a64zhWf8x1vbShFA7xyXAiQka2MEsYQq3apdqXY9b+7Xe9vy8Lo7bWFhQd2K/ESv7unSg9etijFiAoyISUidnqm6qIltRJU2GxWrsUpDerlGlNWRMSMyOQNikWwaGW7jUHhw6q0L2IGtm3i0uyG+HNrUrIyJYSG4+E7zvTTBQznfz7t8BXTwORqcDNOwO+A7KuolyJFVV8u/s7NNfXeX7pS01TdSxjZ5+CzGkzYQsNQ1N7E7aXbndFWQ5XH/a4j/z7npc8DwvTFuKMtDMwPnr8sP79UcCMkIA5XHUY/+uL/6U+BBrbu9dtuGM1WZWQ6UncyGWUzYDUVtlBLdIiKSLJEbt7tUxboUVapBCuB6+WhhpnKshZt3IivxZtzXoxbydSdKtFVaKRPD4KiWMiYbWNfCSkpbENxw5UKUEj6ab6Ss9vs2FRNpeYkShNfyI+voD8861pqVFixCVM3ERKUX0R2qSV1GDchZG7yPEQPF4gjPRvqXqE5fjB/eho83z94jPGuCIsUsgYHNbp/Nre2qHSpCVHapRoka2pzvP+8l6fmBWl0p+ypUyM7vZvpK25GccP7kPB3l0qRdVVOMl+VJMmaJLDIjB26TmIv/BCBE+dGthipioPePvXwBk3ehraBQhtrS04vm+Ps/h2ByqOFXicF4Eif7sSYRHREp2Uor7kHKg8oASLbN+e+NbjPUNqEafFT3MJltmJs2Ezj9z7JwXMCNfAyEtW1VKlPij0D45jdce0D4264yhuKEaHq1OnZyT0lhGR0SlqIjKQHqldSnpq2P5Aqgu0SMvufwClXb1aztciLRPP9fimIm/CZYX1namgo7UqfdMVS7AZyVmRnYJlXBTCY4z/xiO/HykM1qIzlTieU4X2Vre6G/kAyYx0FgPHIWV8NMwW740QNLY1KiHi/rfmiqjUH0eDdFv0gTnIjJTwFNffWFdhHRcSh+b2ZvXNS4S5PJ++39TmvGxv0o61Nbqu92d/pOkqfk4mkroKoVBzKOwV9ag9lI/yg4dQsv8AWhs9X8+IuHhXhEU2ua4j/y50oSKipbywXkUH3ZFooPy9iSXAiby6bkXrJnOQ+htMF0EzJValVLv+PUrqSoqCVa3Nrh2oKDrmcT7I4UBMYzMSzTZknTIf4390CcJnzgpsMRNgnix5u3aovxF3wa0ihBOyncW3pyA1ezJMZjNKGkpcguWr4q/U55k78n4hYkVEy+kppyM2JHbUfiYKGIOLeNvt7ShtLHV9E3aJG/kAqjuGyma3OpMeEMUrKSj9Q8Zd3MixxLDEvr951p/QZg9JpKXwa0+vFhErM3SvlgjtG/yJJo+6lZ7ehOVDPy41vLNuZVw04lLDfKILSIqGi47oxcCVqDhe7xktCzarDw8RNGOmxyE6MWxU1yffdkrqSzxSO+7i+GR/L0JCaIKHMNH/VuTvJjksGRb53bshv9/m9g40t9lhNgUhOnT429Plm11/hJH7cY/bjJAwCm02I7UiBKnlIUirCEF4s+dr02qx40RCG6qSgbpUCxAn4igcYaZwxNSnIKoyBaEVcbCVRSGosfsXDUuEjPqyIi4rVEUhU7JiEBkaoYSTCIr6KomuVOGYbAeqVKG7x/1tJpX+1AVNQmYkTF1SrlIsrKIzO7Yjf8c21NXXepw32e2I6wAyxk3EhOUXIPN758JsoWuGP3uy6ETEJ6hOIYmyjJk5G6ERkerfzrbSba60UG5NrmeE2hKG01JOw4K0BUq4jI0aa5j4pYAZIQHTVF+Hz//+EoLDwhAcHo7gsAjnfgRCwsKdx7RLW0hoj8V7gvwxuX+D1gWO/s36ZG/QNpNNRWn0b9CZkZlIt8UgvewwMg5tRKQMNRMXOHevFom0TL0YzY5Ij7oV2VoaPHPtQmikVYkUvW4lOStKFd/6A5IOK9xfiYK9leqyud4zxB+VEKJ8ZyQ6Ix8gthDLkD/Iy5vKXb9r99+9CJWSxhJ1m74INYcjLjgVMdZkRFqSEW5OQlhQAmyOJFgRh/Z2C5rbNEHS1NrhFCcdaGqzo0VddnSeb+tAq1t7ujA2PgynjonFKWNicMqYWExJiYTFS8WpLox6EkA9CqOGWrTklcKeVwFLYR2sVZ6F5R0mB8rj2nAsrgHFCc2oiGqFwyRFtJFIrhuHlLqxSK4fh8T6TFgcnkLPjg6Uhx9HaWQeSiOPojQiD3XBleqfXVdERGbHZGNmwkzMSJiB6QnTMT5qPOorWl2CRi67ppzk3136pE5BI18kun641JwoRf72rcj97BMcz89Fs0wdd39uhwPJsQkYe9pCjD/n+6oltrf3J+J9fkLFOQf69GTJmDbDJVri0jPUv5H9lftdguW7su/UF2sd+QI8I36GS7DMSpgFq5cMhaWAGSEBU3G8EC/f2sO49p4ICkJwqC503MRND/shYRGwhYUhJDxC5Sgbza0os1ehuKnE9YGnixwJ/Z0sPRXV0YGMoGCkR4xFZvBZiGuaAGt5FFqLzWgo714PIeHqxDERnYJlbBQi40MCIvzssDtQVljnEjSSBnCPPkmxceK4SCRlxyB2XBSCk0LQ3G7XxEC7JhZa2jtQ2VSNE43FKG8pRkVLCarbSlDbVor6jhNocpTDjr7rUBx2C+xtsXC0xcHeGgt7WxwcbdqlXId9dKNCoVYzZmVE49SsWJewSYgwPj3YH9rbpCD2gMuPpeRwjke3hfzbTB43wVXHIp0XZosNZcfqcOxwhYrWlefVo7Gyu7APCrHDlNKMjqR6tCTWoCG6HE1BDd2iR10jSb0hUZmpcVOVmBFhMz1uOsLqYnE8p1qJGblsbWrv9uVCamd0QROV4OlWrdIKh3Nw+N23UbBzO0ob69HWRYwGW6zImDQV485YpF6HmJS0gPj37s+eLEX1RS7B8nXJ16o2zh35sqvXsUi0JVpqH70QCpgREjAStt29YT1aGhu0raGh+35DvVLMw4E1OKSb2LGGBKOj5QRa6o+iofk4aixtqLQBZTagyhILU1sqYlrGIKFpHBIasmBxdA9x14dVojmuCtbUdsSMCUZGViIyY7S0g6QivPmNTP5cW9olqiDfwjtc0QZ16TzW7DqmCw39mDM60UV8dEYs7KowOa6hA8mNQEZLEGLtnm/8jaY2FIRWoCCiAIXRB9EcfhwmaxWCzM0nWXcQHG3RXYRJ576jPUK+F7luH2I1IcRqRojFjFCbGcEWk7qU63LOte9+TG5v1Y9p99ePhdpMCFa30x5PzmuPa0Z9czt2FFbh24Jq7CiowneF1ahr7v43PCZOojQxStSckhmLKamRsHpBlEbESVlBnlZ4KwZyPbQkx6SkanUsqvB2JoKCQjtrV5zRSI86KSEIiE+LUN5EUqMi22BGW+gRI0kF7qvYhz0Ve7CnfI/a76l+ST5YpsdP17a4GchonoCGfKgITfGharR38VGKiAt2FQSnT45ThfTutNfVoeDtt5C7cQOKSo6hMjQYHV1+bxFR0RgzZ66rzicyPmFAPyMZLk8WTbR082SJjHK1N+ueLPWt9dhaslW1OItwyavN87hPhDVCCRVdtEik3pvf23UoYIyugWltVWKmuaEerY2NStQ0NzaofTmmiR7teE9CqK2l7w/D/mMGTDY4LBa0WR1osDajLrgeTbY2tFnsaLXaVb6/1epwXtrlqxniohORFJuOtNgMZERlehQbR9jkg3Z46bA7UFTdhNzyBhwtq8fR8ga1X1Hf6kx7uImP9o5urdrDtAoEWWtgslZqgsSmXcbYOzCmKQljascivXYSbB2eZnkVYUUojN6PwpgDqIgqR7A5FhGWJERZkhFrS1Fpn4TgFCSGJSPcGqyJBxEnbuLD/Zjs28ymbjUPo4lEoA6X1Ssx821+Nb4tqMKhE551Q4KseVaGpJxiVJRGtsTI0YnSVJeWKLGSLz4qe3aiqc6zBiQsOsYZYZmNMdNmo7093E2w9Oz+LKkad7EikciRTJuKsMmryXMJGtmkG6SnrjGpiZOQ//TYGRjbPBWhpfEoP9Kkfh57h+c/iJjkMFeEJn1yDEIjOr/E2BsaULNhA/Lefw/HDh1AeYgV1WEhsHf5e5OITNbM2cicLttMhEV557d1//Bk2aEihvaOzsi6FNqmTZ7qSguJJ0sH7NhbsddVfLurbBfaHe0exfoSxdMFi6Qpu9a++QIUMD7uxCsRHOmEaDn6DVp2v4+mnM9RWWNBWVsaqtoSUdMRh6Z2KxyOVsDRAoejRV2qLagVDmX7P/Rfqx0OtLlEjiZ0HDYzrGGhCA2PREREDGKi4hEfm4Lk2DQkx2YgPDIaIVIDpKJGYTA5DY5UWLu+VYmTo+X1TrEi+w3Ir2hEa0ffNSA9IcWnWoTBGa1wRRw6r2vHJPpgAiz1aAsqRzPK0GwvU+md2o5SVLeWoKa1DHb0vYYIcySmtZ+KrJrpiCnLgLlc0jqdb/wWq0l5fOjdTWKs5wvfePpDTVMbdhZqYmaHM1JT20OUJiM21ClmtEjN1NSoYYnSSOGi6sBR7c07Vc1H12ilfNCOmTEHKdnT0d4Wg9LcWpRIYXpuDVp7aPmX30/y+GikOgWL+n0ZKBx1Y8Gc6hzsLd+riZqKPThSfaTHGqkxkWMwM2Y2JrfMQWxFOloKLago6O7FFJ8R4YrQpGXHuESZiJn6zz9H5bp1OLZ9K8ptZpRHhKImLLib/1Ni1jiMmTFLCZqMqdI6PropTX+grrJci7Ds/FYJ7+YuorsnT5bCukKXYJG0UF2rp49LZmSmq1tIoi3S3errUMD4soA5cQANW99B6Y49KK2KQmnbJJxom4g2R2i3m0ro2GUQN1bzXLHYzCqk3trcjJbG+m7RneYGiQQ1qIhQS5d9uX1TQ52KFDkGISh6osNiRqvZhmYEowkhaDEFo8VkQ6vzssUcjNYgGzqsIYiJiUJSfDRSE2MxPsqGVFMHQiZP1SIVTnES7JYq6frBKP+43X1Q3AtmJT/c3NHcb+8evYPH1eIeka5C++6CpKmuFYUHKrXupv2V3VyHJZSvz23yt0GUEqXJLa9XERqVfsqvRs6Jum4fniIcVS2Ns45GLpOiTj7yQXxQpCU03ylayvKPepyXb6jSEiqCJS59Mjo6knAiX5uxVVnc0E2/q5Z/56gKPcLiK78PqaeRgkwRNErYVOxRH2xdkW/gk8OnYlb7QqRWT4CpKBINpZ4iUwRaUlakFqGZEqvEm7xn6GKm9t8fouqLz1FhCUJFRKja6kI9o2pS/CutuRLhypw+S0UKrDbfqI8yxpNFEy398WQRV+ytxVtVHYukhrr+nkWgLEhdoLaFaQuVgPE3KGB8SMAoz5W9h1CydStKj1ShtC4J9fakbrezBpvUIENVaOtsZQ6PHpk3DfmTaG9tcaa5NGEj+7W1FSitPI4TVSUorTiBmtoqNDfUwd7SBHNbO2ztgLXNBFu7CdaOYaiNcDgQHhOLyIRERMQlICwuFh0RVjSH2FET3IJycy2OB5XjWKPmkSL/+E/Wnp4cntzZbuzmiyL7J21P73OpDuVELIXAYqRXfLim10GUMrdJPkR8oQV9INQ2t2FXYY2K0uiRGoncdCU9JrQz7ZQVi2mpUTDD3jm5ec9OZXPe1YlWChfTp85CZGI2HI40lBU2qyiLPrm8aydZyoRoJfDlMj4t3K9e7+rmapVO0KM0ImzKmsq63S66Iw6ndizGuLrpCDuRiPZqUzePGhExqiB4ciySxkUhqKUZ9Z99psSMXDa3t6EyPATlkaGojIlEQ5fX0Wy1Im3SVDXzSVJ2yeOzA7JlWx/mmdeLJ4u8CaROmISs2aeo1FDKxEmwmxzqd6gX3+4u3+0RbbMEWTArcZYrLSSGct6UFnJwmGPgCBjpeKk+0ai1L+eUovRgESoqrbA7ujrVOhAf34HkSalInhCvxEpsavio1kV0rUvJq2jU9svrcbyqCV1tYkLbmhDfVoKE9iJkOMqR1l6J2JZahDc0IKSxBSFNdoS0mOTrm+qIaDc5L81m56V2Xd+X4/2lydaBhpB2NIZ0oD3CAlt0hDIbi01MRUpKFjJTJyIrbhxSw1NHrVWwrbUDRTnVztlNvQyinBLratf2x0GU8tYifzPf5ldhh6Sf8quQU1qn/e04HIhrq0Jm0zFktRxHenMRLB2eEayohCSkZM9AeOxE2B1pqDhuR8XxBvXvyB2z1aQEoR5ZkU2clwMNGQuhCxoVranY2y3lENESi/H1MzC56VTEVWYgqMHWLVIlHjQq5TQlFrFxJjRu+gK1H/xbiRlHczOarBYVmalMjleXTW2evzdrSKg2D0oJmjl+3bLdf0+WU9RrIZ2mBXUFLsEiRbj1bZ71ZeLBIoJlYepCzE+ZPyJ1hwPB0d6OtuPH0VpQgNb8ArQW5KM1Px9t+QWwpKYg66WXMJxQwHiJgBF/ERErJUdrcEKZxNWgpbF7Lj7MVIXk6AokT0xA8ry5SJqcPmTvkf7Qn7qU4PZWxLXUIq6pFvHNtYhrlssaJLfWI62jXh2LqK+CZQCFx+3yphcTgtpIM8rCO1AU0ozi0BZURQJVEUGojABqwgFLhxlhzRaEN8ulGeFNFkS1BiOmNVQdszTaEdTFz6Q3ZCpwZFy86q6QTSI62qXzWFwCrCEjJyI6B1FWKPOyHgdRqlEH8UibFDMq4xdGm9ryMuTs+BZ7t25D+aE9QKPnh2uzKRjlwRlotY5BdMhYJDliYe2hoU9Sc+7RFZlc7s1OykYh3+QlBaEXCOtFwq5UqgOIbk5Ees0kjKufjtSaibC0BncT2jIYVSI0aVkhsB7chroPP0T9xo1KzMiHR0OwFdUZqajOTMWJ5kY0N3mK9ZCISFd9ktTRxKam+2xtmKcny45uIx568mSRyPDXxV9rwxCLv1LRYnckNa1SQqkLlXARj6/RxtHaitbjx9GmREq+U6hoYqXteBHQS2etOTEBk774YljXQgFjgICRdEH5sXqn9b7maivD27piRguSrLlIsuYgJaUdyafOQcRpFyEoKnXE1lbX3Ia8comgaB0+shWUVqO6sATBtZWI7yJOtEtti2jrv+upKTwclqQkty0RVo/rSbAkJsLUg1CQlsCuVvnSjeFegyLpntjgWNebn/zpynAyGVgmW32lXMocJO16XWUF6irKurXU9oa0qYuQkW9NuqiJiI9Xl7roGY7iRXuHXU3t7m0QpXwYp06MdgkaGYbpi2/4npObd6Kq2PON22y1IS49GwjJQkNjCtrromHq4gDXAQdKzQ6UWO2wJIUgMzsWp0xOUCmotJjudWGkb8TMTIqC3SM1h6oOad5SjiDENaYivTYb6TXZSK+bBGu7p6AJjbJpxcDjwhFbdQCOL7Q0k6NJe5+QP+OmMRmonTkVFSFWFB0r6OZhIi3Amc52bRE0EmnzZgbqyeIwB2Fn2U5Xe7NEwjzSQiYL5iTOUSkh2abETRnWac69YW9pQduxY64oihIreflKqLQVFUlhW6/3DQoOhm3MGFizxsA2Jgu2LNlkfwysacMruChgRmEWUl1Fs2tOkERWygrE/6X7H0CMpRjJlgNItuUg2ZqD+LQwmGf+EJhxCRA3btjWJH4mBZLmKa3F8dxjKM87jrrjJWgtLYWtutIpUGpcwiS6te/5Oe4EhYTAkpwEa2IXMeIuUkSYhHcOtfMq35jGBk3gKFHjKXLqnSKn1fkGfDJsoaGu6E1nJCe+U/iIyAkfmOCQGg6JyigzvZ4GUUbbMGZqHDKnxyFzivcOojz55OYgRCZmIThsHFpaUtHSJJ5Dlm4fkIljI9Eea0OR2Y7vGhqw/VgNKhs80xRCSlQITs3SamlE0ExPi1bF3WRgiEeNRGZcNTXle5SnSJDDhMT6DKTVTkJGzSSk1I7r5isVER+MjAlRiO8oRvieDej4fL1LzAjm9HS0LlqAqpQkFJeVoCin+3DMmORUrSB4xiyVdpIWeF/yZJE6vaO1R13dQpIW6jrsVyY2691CMslZZnKNBPbmZrQVFnaPouQXoK242HMgaBeCQkOVINHFiXWMU6yMzVLv76OVBqSAGSEBI0WaW94+oiIsXe2+heAQIDmyFCltXyI5aBeSrIcQYmoAYrI0wSJ2/snTB/Xcjo4OtJZXoDi3ECW5x1FZcBwNRSVoO3ECpspyhNdVqTRPTEs9TP1tobZalQixniRqYoqI8MkIwEDftDojNyJ2KpyXncekoLk/SEuvJmbiPUSOe9pK3gR7ek1dgyidc5uKZBBlW8+DKGVuk7QBmw0qTvWc3LxTTU/u+uEUGpUMa0gWWlrkW1oagkwhHh0xkv5JGRelpYTGR/foAC2viaQ09W4nKRA+UFKn6rTcsZqDlIhxLxBOiw4MR+nhRtIeynTPrfPpRF0Zkus0PySJ0CTVj4W5S/1eeIIZaRGtiCn6FqFb3oOlrsJ1zpqejtBl56Jx2hSUNtaqvxkp3PZwSZa5XplZTkEjLdvTVd2It3myVLfWuNJCEmkRh3R3JFIsNv16WkiGIw7behsb0eoUKW16XYoIloICtJd4rqMrprAwWMdmacKki1hRIsUL/q1QwIyQgJGU0N/v3eKaICtvvslJLUi2f4vk8jcQ3byr0z4hIhmY/iNNuGTM6+aroCMvf0d1NdpPnFBbW2kpao+VoLqwCE3FJbCXl8FSVYGw+hqYTzIvR8ceZEJLdCwQn4jglGREpqcgLC0FFo8ISiLMMTFe8QfrK7Q2NzkjNnrkRk9bdaasuno79IbFanOlp3Sxo0dwdJEj5mEy0qbPQZQhZhXSz5w68oMo1RT24uMo2K1Z9Bfu29VN1FmCo2CxZaGjIx0mayaCTJ2+FMHhFtXxonuvSFeWDNIcDI2t7dh1rMbDl0bqubqSFBnsFDPajKeZ6YzSDBaZ5+Wqp6nYg4MlhxBSEaeiM2k12UhsyECQm5u0Aw6EhjciufEYYvZ/geiyfbAojypNzEQuX46Qs5eg3ASVahRB07VdXqYpJ0+YqCIzImhk7IN8QRgdTxYtyiKeLLBZ8N2J75RYEdGyv2K/+vncLRhOTTrV1S00OW7yoDsahY76BrQVuosTLYqiRMqJE33e1xQZqQkTj5SPJlbMcXFe/55PATNCAkZeqj2fHUdiRCUSqt6DZd8bQJXbP7iQaGDaD9S0Z0fWmbA3NHYKE3VZ5rreUlKKltJSOCoqYGrve06OTgeCUBMSifqIGLTFxsOUkIjQ1GTEZKYhaVwG4jJTYU1O1v5I/bTq39uRNIqIGy1dpYkcd6Ej5xprqvv1WNKKKkLGPXITHBaDpoZg1JSZUVZoR0ujTb3J60QlhmrRmWlxqvByqMXg0lWhGcjtRP6e79TP5Y7JHIwgiwiVTJisYxBkcr5BOqeX68W2qRMGZ8M/kH+bhZVNziiNNhZhf3Et2rtEaSwmidJEKTGjR2rEfM/b39S9EXnNpWZNN93bX5yD6qOtSKzKUoXBcU2edX0O2BFmL0FS0R7Ele9DVO1RmO3tqoYi8rzzEHXecjiyxqj2Y/U3t2dX97opiwWpk6ZgjDgEz5iF1ImTYLZYh9GTRRMtUYnJqlZIFyzbS7d3m2k1MWaiKy00N3mumms1EDrq6pRAaZOuni6RlI5yz39nXTFHR8PqFCke9SgiUnz8iykFzEjVwBzfDrx7E+zH9qKtyYT2JjPa20LRHjEN7bYstLeGoq283CVUpEq/v1TbwlEREo3K0ChUhkQpgSIRk/C0FMSNSUPK+EyMmZCO9IRI5UBLfBcZNthQ5RQ3InLKyzwjOpUVau5Wf2YmBJnMsIVGAUER6u8PQZEIMkWoyIfJHInk8WkYO2sMsmYkqtTTyZxmJZV2bP9u51yhnd3e6BFkhsmcBpNljCZYzMlKQNlCzCqyorUxa35FwQZPL5fRE7uP61EaTdSU1XUv6JbxB6dk6jOeYtR4BBnpQAZOh70DR2uOKj+TfYU5KDlUCxSFI7V6IqJbusxXcrQhuiYX8ZUHEVudg8i6fASnpqjITNT55yFk5kz170LEjCoG37Ozm4CWaEy63rI9YzYSx45T7t9dPVmO79+Ldvd276AgZcanTOScnizVbTWqS0h1CxV9hRNNnpGO+JB4rb05baHqGpLxDid9PWpqNHGiimXdUj4iUio9W667Yo6N7bEexZaZqUSKv0IBM0ICpnnbJuT/4irY2/sf3aizhqIiRERJtLqscAoUESsdsfGISk9Fwpg0ZKVGY1xCOMYnhCMzLoxh7gBH2jUbqitVwbEUGesRHVchsoicyko4+pVWlIhIOMzWSITHxCMuLRkpE9MRn5as0lZSX1Xg7BbqNrlZaZYkl2AxWaQF1qrm7bi72kq0xWgb/n5FDKqaXJ40Imr2FvUcpZERCDIOQSI1EqXJjGOUZrC0drQipyoHO4/sw9EDJ9CUb0J0WSrC2zznK5k6mhFbfRixVTmIrT6I8IgWxCw/D3EXXIiQWbPUbapLi5Wwlr/XnmZgSb2MiJHygrxePFm0CIt4sphCbfi29FtXt5AUMrsTbA5WaSE9yjIpdlKP9VlSAtCW3z2KIsdEwPSFOSFBi6LIpmpTRKzIZSbM3uRh5nCgQ4bdtnaogbdy2d5iF1svJGUN7zopYEZIwJQdKUD5hcvVfostBNVh0Si1RqI8WASJU5iEdooVuR4cFopxieFKnOjb+IQIjE0IQ2SIb1iZE+9ECg0lUuPeQu4qPK6sQG1ZGRqqK7oJkpMRZIpxEyyZsIaEKzNF3XdFLkMi/ONvVwaF7nFGafQC4RM9RGkSImyYk6nV0oigkfEIYTbvcUT1NcQ24ducvTi4uxBVuS2wlsTA1uaZgrG01SO2+hBiqw4iBAVwzM9A4kUXY8IZ58Fmtqm/6/LCfJVqkq6hY/v2oNXNg8bTk+UUxKZl4FD1IVeURdJCLc6aHJ3JsZOVYJECXBEvIZYQ7cO7srLHehTZ7LV9171JcaxEUjzqUZxCxRwxvJ2bHe12tLV0KId3uezc1453PacJkV5u63ZOjvekFOLSwnHpfacP68/gNwJmz549uOKKK3D48GFcffXVWL16db++BY2UgNl/rApXPfqOEibNlk5/BJkenBUfpgmURC2KMi4hQl2XNz5+cyNGIR0WjTU1qCkrw7H9BTh+8BjKC4rRUFMJh70OsNfD4ehQkRVNsIxBTHKyh6ut+ND4kw1/X8jbYVFNszNCowmavUU1aOsy8VnSuFNSIj1mPMl7AP+tDw5xV87NPY6d3x1G8aFa2I8Fw9ThKZJtLdUq1WRtzkH5mHK0L52E9NOWYEbCTIyJGiPOfSjNPYyS3EOIS81QnixV7W5poeKvVCGyO4mhiU7X2wWYb81G5In6zvZjN7Eis6L6wpKS4qxH0WpSVMpH0j+Zmarzp+scMSUM3EWGSzCIeGhHW6ubEHFFPDpFh3bO3k2UdJ1MPhLI0FpxbJYCfInEXnzTnGF9fL8QMC0tLZgyZQqWL1+OO+64AzfddBNWrlypBI1RAkZy6tf8bRsmJGriRN/EUIt1KcSXcB9EWVfVgqQxmhV/8viRm7Hly1EaSTVpdTRapKaktnt9W3y4TYkZvUB4dkYMwoMZpRkMHWL2mFeLA3sKkbe3BI0y07BLy3ZIUxlCG3JQHJmDPdnHYZ47TomZCTETcLDyIL4s/lKZ9OkEORxIaQzGYmRjblsaJtSHIby0zhVJcTR2Rm/kQ9FusqLDHOzagpLTEJSSASSmIig+GY6YeCAqDvawKLTbg7oIEfcohyZKlDhp7VCpmJHGZAlSbt4iMizOy859k3bdZnYJka638zxncp2Ty5EeaeMXAubtt9/GlVdeiWPHjiEsLAw7d+7E9ddfj02bNvnMKAFCiH9SXNPkSjmJsNlzvFaN3nBH3ucnp2i1NBKhmaFauE2uULz+xqu/BTtHROlHnee63la/3uW8o/sxnOw+bs/f9fFP+vw9rNn1KP1dc5fH8byv523lQ7+5uAkNedVoyClGS71NFZS7E9xUjHpLDnKSj8DhaEV8vQ0xDTYkNEcgsiUUtmZ5XIubKLGhw2TzvG4NVft2ZbA4wl9KgwCT1QSzzaRdWuXS3HndJse06+qczQSL1awu1TGb87pVhEXnMbOIDLOMrtXWrwcFXZddj7vto4dz2vWgLte1x7GYg4bdEdsvBMwDDzyAr7/+GuvWrVPXZZnx8fGo7KFyW6I1srm/AJmZmRQwhJBRQZywtSiNU9TkV6lUFBkZrA5gbKsD82trkN5hAYLj1aDYkaAVDrQFAW1BDojhhb4vPU3qmFx333edc7+Pfq7z8ZRVno8H7ickhuOT25YaJmC8Nr4pP8S4cZ1W+6IAzWYzqqqqEBsb63HbRx55RAkeQggxgmCLWTPMGxOLq6C9b5XUNLvSTiJsDpbIJG5H92+0vX3b7eNb8Mm/MevXg3p9HNcjuH1D7+nbebf1Onf6+nauP7f79T5v28N9Op+rt8cHDiAWB4OCENrcgin5BUitaIDJEQGHKQgdpiA12b7VakGz1Yqm4BA0hoRo0+5N0M6LkDADHXJpgufxILnuUE+oIly9RM7QR6RJJJUkZG29Rpo8H8s9atVTlM3z+Rwnv08/Ims9PU5Pj+++Zv2c0XYDXitgLBYLgoM9c/EhISFobGzsJmDuuusu3Hrrrd0iMIQQYhQp0SE4f2aq2gghASRg4uLiVBeSO3V1dbDZug+yE6HTVewQQgghxH/x2t7I+fPnY8sWbe6QcPToUVXnIsKGEEIIIYGN1wqYs846S6WCXnrpJXX94YcfxrnnnqvqYAghhBAS2Hh1DcwLL7yASy+9VPnAmEwmbNy40ehlEUIIIcQL8FoBI1x88cU4cuQItm/fjgULFqg2akIIIYQQrxYwQkpKCi688EKjl0EIIYQQL8Jra2AIIYQQQnqDAoYQQgghPgcFDCGEEEJ8DgoYQgghhPgcFDCEEEII8TkoYAghhBDic1DAEEIIIcTnoIAhhBBCiM/h9UZ2g8HhcKhLmaVECCGEEN9A/9zWP8cDTsDU1dWpy8zMTKOXQgghhJBBfI5HR0f3eZsgR39kjo9ht9tRVFSEyMhIBAUFDbs6FGFUWFiIqKioYX1s0glf59GBr/PowNd59OBr7duvs0gSES9paWlqiHPARWDkh87IyBjR55BfGP9xjDx8nUcHvs6jA1/n0YOvte++zieLvOiwiJcQQgghPgcFDCGEEEJ8DgqYARIcHIz7779fXZKRg6/z6MDXeXTg6zx68LUOnNfZL4t4CSGEEOLfMAJDCCGEEJ+DAoYQQgghPgcFDCGEEEJ8DgqYfvLyyy8rU7yumxwnw8sLL7ygDJLCwsKwdOlS5ObmGr0kv+Sll17CjBkzEBMTg0svvRTl5eVGL4mQASN/t+PGjUNeXl6/jpPB0dPr+c4772D8+PGwWCyYM2cO9u/fj9GEAqafXHbZZaiqqnJt4j6YkJCAxYsXG700v+LIkSP43e9+p/5hHDhwABMmTMAvfvELo5fld3z88ce46aab8Pjjj2PXrl3KVfOHP/yh0cvy+zf8PXv2YP78+YiNjcUdd9zRr3kvpO/X+KKLLupRvPR0nAyOnl5Pea++4oor8Oijj+L48eOYNGkSrr76aowmFDD9xGazqW+q+vbf//3f6g1fPmDJ8LFjxw4sWLAAp556KsaMGYMrr7wShw8fNnpZfof8/YowXLZsmXqd//CHP2DTpk2orKw0eml++4bf0tKCFStWYO7cudi2bRv27dvHCO4QWbVqlfpy2d/jZHD09HpKtEXEy49//GMkJyfjuuuuU+/fo4q0UZOB0dTU5EhKSnIcPXrU6KX4HXv37nXEx8c7duzY4aiurnZcdtlljp/97GdGL8vvOP/88x2rV692XT9w4ICEAtRrTobOOeec43jyySfVa6q/T/zzn/90xMbGOhoaGtT17777znHmmWcavFLfJjc3V126v859HSeDoz+v57PPPuuYNWuWYzRhBGYQvPbaazj99NMxduxYo5fid0ybNg0rV67EKaecoiJdW7Zswf/5P//H6GX5HRLh+te//qUGnwoSCZDURn9nkJC+ef7551WKzp2dO3eq6KLUdgmzZs1SURgyeCRFN5DjZHCc7PVsbW3FH//4R1x77bUYTShgBsFzzz036r+oQOGbb77Be++9h6+++grV1dWquPSCCy5grcAwc/vttyvxIkJm4cKFKhR84403Gr0sv37Dlzoj9+PSBGA2m1VNHSG+zP3334/w8HDWwHg7Uo8hm9QOkOFn7dq1Kt8qES6JBjz00EOqWEy+vZLhQ6JbX3zxBd58803Mnj0bU6ZMYc3ACCOdGl1t10NCQtDY2GjYmggZKhs2bMDTTz+tMhNWqxWjCQXMAPmf//kfVZw32r+oQEGiAidOnHBdr6urU2/wHR0dhq7LX0lLS8Nbb72FRx55REUDyMgRFxeHsrIyj2Py9y0NAoT4IkePHlVRchEwkv4fbSyj/ow+zr///W+29Y4g0pb+85//XKU2pLJdPGFSUlJUvQAZfv70pz+p6Mt//Md/GL0Uv0dqjKQ2xv3NXzqTRNgQ4ms0NTWpL/M/+MEPVEdufX29Oi6pJEmPjgaMwAzwF/b111/jjDPOMHopfssll1yCO++8E0888YQSilIH889//pMRrxFAai9Wr16tiu/IyHPWWWepOhgxEBQefvhhnHvuuYx8EZ9k/fr1qghdRHlkZKRry8/PH7U1cBo1IYSMEPJNVCItesfiu+++q0LuoaGhMJlM2LhxoyGhd0L8AQoYQggZRUpKSrB9+3bVUh0fH2/0cgjxWShgCCGEEOJzsAaGEEIIIT4HBQwhhBBCfA4KGEIIIYT4HBQwhBBCCPE5KGAIIYQQ4nNQwBBC/BbxWeHUeEL8EwoYQohfsHTpUrz88stGL4MQMkpQwBBCCCHE56CAIYSMeqTkiiuuQGJiIi677DK1LzNUxGZ/z549WLRoEaKjo3HBBRfg2LFjHqkguU1WVpYagPjnP/9Znbv22muVZf9nn32mHkv25Zg7Pd2PEOLbUMAQQkYdmQ8k6Z61a9di7ty5WLlypRra+f3vfx/Lli3Drl27kJmZqSbd2u12dZ+Kigo89thjWLduHX73u9/htttuQ3NzMx5//HE1mPLMM8/E008/rfblmE5v9yOE+DYUMISQUWfVqlWYPn262r/66qtVdOS1115TkZj7779fXX/yySeRk5ODb775Rt2uvr4ezz77rLrfNddcg9bWVpSWlqrBiDExMbBYLAgLC1P7ckynt/sRQnwbChhCyKgTEhLSbd9sNmPcuHEex9PT01FQUKCux8bGYtasWWrfZrOpy/6Mchvs/Qgh3g0FDCHEK5BUkaSWdFpaWlBUVKSiMUJUVFSf9zeZTD0Kk5PdjxDim1DAEEK8gosuugh1dXV44IEHkJ+fj5tuugnZ2dmYP39+v+4/YcIEbNiwAcXFxfj444/R0dEx4msmhBgHBQwhxCuIiIjAhx9+iPXr12PmzJkqdfTOO++oyEp/uOeee3DkyBEVsZEuJL34lxDinwQ5mAwmhBBCiI/BCAwhhBBCfA4KGEIIIYT4HBQwhBBCCPE5KGAIIYQQ4nNQwBBCCCHE56CAIYQQQojPQQFDCCGEEJ+DAoYQQgghPgcFDCGEEEJ8DgoYQgghhMDX+P8B+ep3xTDfyVkAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "gp_by_month_to_potential.plot(kind=\"line\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "id": "0b8d0541-b11a-4042-820f-997a5648a5a8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>货品</th>\n",
       "      <th>货品1</th>\n",
       "      <th>货品2</th>\n",
       "      <th>货品3</th>\n",
       "      <th>货品4</th>\n",
       "      <th>货品5</th>\n",
       "      <th>货品6</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>销售区域</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>53811.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>2827.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>9073.5</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>579.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>5733.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>11.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>5229.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1510.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>8401.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品       货品1      货品2     货品3     货品4     货品5     货品6\n",
       "销售区域                                                 \n",
       "华东       NaN  53811.0     NaN     NaN     NaN     NaN\n",
       "华北    2827.0      NaN  9073.5     NaN     NaN     NaN\n",
       "华南     579.0      NaN     NaN     NaN     NaN     NaN\n",
       "泰国       NaN      NaN     NaN     NaN  5733.0     NaN\n",
       "西北      11.0      NaN     NaN  5229.0     NaN     NaN\n",
       "马来西亚     NaN   1510.0     NaN     NaN     NaN  8401.0"
      ]
     },
     "execution_count": 80,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#从不同区域角度分析\n",
    "gp_by_area_to_potential = data.groupby(by=[\"销售区域\",\"货品\"])['数量'].sum().unstack()\n",
    "gp_by_area_to_potential\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "id": "89a525bf-51b7-4ce7-813b-29762f690bd3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>货品</th>\n",
       "      <th>货品1</th>\n",
       "      <th>货品2</th>\n",
       "      <th>货品3</th>\n",
       "      <th>货品4</th>\n",
       "      <th>货品5</th>\n",
       "      <th>货品6</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>month</th>\n",
       "      <th>销售区域</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th rowspan=\"6\" valign=\"top\">7</th>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>489.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2041.5</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>282.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>733.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>414.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>2.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1649.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"6\" valign=\"top\">8</th>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1640.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>1410.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1045.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>3.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2381.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1188.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1503.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1181.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"6\" valign=\"top\">9</th>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>3019.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>1409.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2031.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>283.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>271.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>343.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"5\" valign=\"top\">10</th>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>28420.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>3.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1684.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1984.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2542.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2358.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"6\" valign=\"top\">11</th>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>2041.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>2.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>100.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>9.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>14.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>9.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>3.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>383.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"6\" valign=\"top\">12</th>\n",
       "      <th>华东</th>\n",
       "      <td>NaN</td>\n",
       "      <td>18202.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>2.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2172.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>2.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>泰国</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>350.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1082.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>NaN</td>\n",
       "      <td>3.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2487.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品             货品1      货品2     货品3     货品4     货品5     货品6\n",
       "month 销售区域                                                 \n",
       "7     华东       NaN    489.0     NaN     NaN     NaN     NaN\n",
       "      华北       1.0      NaN  2041.5     NaN     NaN     NaN\n",
       "      华南     282.0      NaN     NaN     NaN     NaN     NaN\n",
       "      泰国       NaN      NaN     NaN     NaN   733.0     NaN\n",
       "      西北       NaN      NaN     NaN   414.0     NaN     NaN\n",
       "      马来西亚     NaN      2.0     NaN     NaN     NaN  1649.0\n",
       "8     华东       NaN   1640.0     NaN     NaN     NaN     NaN\n",
       "      华北    1410.0      NaN  1045.0     NaN     NaN     NaN\n",
       "      华南       3.0      NaN     NaN     NaN     NaN     NaN\n",
       "      泰国       NaN      NaN     NaN     NaN  2381.0     NaN\n",
       "      西北       NaN      NaN     NaN  1188.0     NaN     NaN\n",
       "      马来西亚     NaN   1503.0     NaN     NaN     NaN  1181.0\n",
       "9     华东       NaN   3019.0     NaN     NaN     NaN     NaN\n",
       "      华北    1409.0      NaN  2031.0     NaN     NaN     NaN\n",
       "      华南     283.0      NaN     NaN     NaN     NaN     NaN\n",
       "      泰国       NaN      NaN     NaN     NaN   271.0     NaN\n",
       "      西北       1.0      NaN     NaN     NaN     NaN     NaN\n",
       "      马来西亚     NaN      1.0     NaN     NaN     NaN   343.0\n",
       "10    华东       NaN  28420.0     NaN     NaN     NaN     NaN\n",
       "      华北       3.0      NaN  1684.0     NaN     NaN     NaN\n",
       "      泰国       NaN      NaN     NaN     NaN  1984.0     NaN\n",
       "      西北       1.0      NaN     NaN  2542.0     NaN     NaN\n",
       "      马来西亚     NaN      NaN     NaN     NaN     NaN  2358.0\n",
       "11    华东       NaN   2041.0     NaN     NaN     NaN     NaN\n",
       "      华北       2.0      NaN   100.0     NaN     NaN     NaN\n",
       "      华南       9.0      NaN     NaN     NaN     NaN     NaN\n",
       "      泰国       NaN      NaN     NaN     NaN    14.0     NaN\n",
       "      西北       9.0      NaN     NaN     3.0     NaN     NaN\n",
       "      马来西亚     NaN      1.0     NaN     NaN     NaN   383.0\n",
       "12    华东       NaN  18202.0     NaN     NaN     NaN     NaN\n",
       "      华北       2.0      NaN  2172.0     NaN     NaN     NaN\n",
       "      华南       2.0      NaN     NaN     NaN     NaN     NaN\n",
       "      泰国       NaN      NaN     NaN     NaN   350.0     NaN\n",
       "      西北       NaN      NaN     NaN  1082.0     NaN     NaN\n",
       "      马来西亚     NaN      3.0     NaN     NaN     NaN  2487.0"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#根据月份和区域两个维度来分析\n",
    "gp_by_area_and_month__to_potential = data.groupby(by=[\"month\",\"销售区域\",\"货品\"])['数量'].sum().unstack()\n",
    "gp_by_area_and_month__to_potential"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "id": "53321b40-7e1a-4693-829b-ae4ed949bdb2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>拒货</th>\n",
       "      <th>质量合格</th>\n",
       "      <th>返修</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品</th>\n",
       "      <th>销售区域</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th rowspan=\"3\" valign=\"top\">货品1</th>\n",
       "      <th>华北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>3.0</td>\n",
       "      <td>12.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华南</th>\n",
       "      <td>5.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>2.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"2\" valign=\"top\">货品2</th>\n",
       "      <th>华东</th>\n",
       "      <td>72.0</td>\n",
       "      <td>184.0</td>\n",
       "      <td>51.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>马来西亚</th>\n",
       "      <td>6.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>3.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品3</th>\n",
       "      <th>华北</th>\n",
       "      <td>31.0</td>\n",
       "      <td>188.0</td>\n",
       "      <td>19.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品4</th>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>9.0</td>\n",
       "      <td>49.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品5</th>\n",
       "      <th>泰国</th>\n",
       "      <td>14.0</td>\n",
       "      <td>144.0</td>\n",
       "      <td>29.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品6</th>\n",
       "      <th>马来西亚</th>\n",
       "      <td>56.0</td>\n",
       "      <td>246.0</td>\n",
       "      <td>14.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品用户反馈      拒货   质量合格    返修\n",
       "货品  销售区域                   \n",
       "货品1 华北     NaN    3.0  12.0\n",
       "    华南     5.0    4.0   2.0\n",
       "    西北     NaN    1.0   2.0\n",
       "货品2 华东    72.0  184.0  51.0\n",
       "    马来西亚   6.0    1.0   3.0\n",
       "货品3 华北    31.0  188.0  19.0\n",
       "货品4 西北     NaN    9.0  49.0\n",
       "货品5 泰国    14.0  144.0  29.0\n",
       "货品6 马来西亚  56.0  246.0  14.0"
      ]
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#商品质量问题分析\n",
    "#货品角度\n",
    "data['货品用户反馈'] = data['货品用户反馈'].str.strip()\n",
    "gp_by_area_to_qulity = data.groupby(by=[\"货品\",\"销售区域\"])['货品用户反馈'].value_counts().unstack()\n",
    "gp_by_area_to_qulity"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "id": "d9842378-01df-499a-b364-ee912d1ec09b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>货品用户反馈</th>\n",
       "      <th>拒货</th>\n",
       "      <th>质量合格</th>\n",
       "      <th>返修</th>\n",
       "      <th>拒货率</th>\n",
       "      <th>返修率</th>\n",
       "      <th>合格率</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品</th>\n",
       "      <th>销售区域</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>货品3</th>\n",
       "      <th>华北</th>\n",
       "      <td>31.0</td>\n",
       "      <td>188.0</td>\n",
       "      <td>19.0</td>\n",
       "      <td>0.129709</td>\n",
       "      <td>0.079499</td>\n",
       "      <td>0.786625</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品6</th>\n",
       "      <th>马来西亚</th>\n",
       "      <td>56.0</td>\n",
       "      <td>246.0</td>\n",
       "      <td>14.0</td>\n",
       "      <td>0.176658</td>\n",
       "      <td>0.044164</td>\n",
       "      <td>0.776033</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品5</th>\n",
       "      <th>泰国</th>\n",
       "      <td>14.0</td>\n",
       "      <td>144.0</td>\n",
       "      <td>29.0</td>\n",
       "      <td>0.074470</td>\n",
       "      <td>0.154260</td>\n",
       "      <td>0.765979</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品2</th>\n",
       "      <th>华东</th>\n",
       "      <td>72.0</td>\n",
       "      <td>184.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>0.233769</td>\n",
       "      <td>0.165586</td>\n",
       "      <td>0.597409</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th rowspan=\"3\" valign=\"top\">货品1</th>\n",
       "      <th>华南</th>\n",
       "      <td>5.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.419369</td>\n",
       "      <td>0.167748</td>\n",
       "      <td>0.335497</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.527187</td>\n",
       "      <td>0.263803</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>华北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>3.0</td>\n",
       "      <td>12.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.752772</td>\n",
       "      <td>0.188194</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品4</th>\n",
       "      <th>西北</th>\n",
       "      <td>NaN</td>\n",
       "      <td>9.0</td>\n",
       "      <td>49.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.830743</td>\n",
       "      <td>0.152585</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>货品2</th>\n",
       "      <th>马来西亚</th>\n",
       "      <td>6.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>0.549644</td>\n",
       "      <td>0.274824</td>\n",
       "      <td>0.091608</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "货品用户反馈      拒货   质量合格    返修       拒货率       返修率       合格率\n",
       "货品  销售区域                                                 \n",
       "货品3 华北    31.0  188.0  19.0  0.129709  0.079499  0.786625\n",
       "货品6 马来西亚  56.0  246.0  14.0  0.176658  0.044164  0.776033\n",
       "货品5 泰国    14.0  144.0  29.0  0.074470  0.154260  0.765979\n",
       "货品2 华东    72.0  184.0  51.0  0.233769  0.165586  0.597409\n",
       "货品1 华南     5.0    4.0   2.0  0.419369  0.167748  0.335497\n",
       "    西北     NaN    1.0   2.0       NaN  0.527187  0.263803\n",
       "    华北     NaN    3.0  12.0       NaN  0.752772  0.188194\n",
       "货品4 西北     NaN    9.0  49.0       NaN  0.830743  0.152585\n",
       "货品2 马来西亚   6.0    1.0   3.0  0.549644  0.274824  0.091608"
      ]
     },
     "execution_count": 97,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "gp_by_area_to_qulity['拒货率'] = gp_by_area_to_qulity['拒货']/ gp_by_area_to_qulity.sum(axis=1)\n",
    "gp_by_area_to_qulity['返修率'] = gp_by_area_to_qulity['返修']/ gp_by_area_to_qulity.sum(axis=1)\n",
    "gp_by_area_to_qulity['合格率'] = gp_by_area_to_qulity['质量合格']/ gp_by_area_to_qulity.sum(axis=1)\n",
    "gp_by_area_to_qulity = gp_by_area_to_qulity.sort_values(by=['合格率','返修率','拒货率'],ascending=False)\n",
    "gp_by_area_to_qulity"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
